pycharm 参数、快捷键、调试模式
PyCharm参数、快捷键、调试模式
PyCharm设置参数
在运行Python脚本时,会经常遇到需要传入额外的参数来运行脚本。
例如下脚本1:
#!/usr/bin/env python2
# *.* coding:utf-8 *.*
import sys
print(sys.argv[0])
print(sys.argv[1])
运行结果:
F:/PycharmProjects/untitled2/001.py
Traceback (most recent call last):
File "F:/PycharmProjects/untitled2/001.py", line 12, in <module>
print(sys.argv[1])
IndexError: list index out of range
结果说明:
sys.argv[0]是指脚本其本身,那么则print脚本的绝对路径
sys.argv[1]是指脚本的第一个参数,而此脚本并没有参数传入,所以报错:IndexError: list index out of range
如果在shell环境下运行此脚本,则如下:
F:\PycharmProjects\untitled2>python 001.py Hello
001.py
Hello
说明:传入一个参数 Hello,print(sys.argv[1])这个参数,结果就如上
为了能更加方便的在PyCharm中直接运行传入参数的脚本,我们可以设置其运行参数,方法如下:
光标在需要运行的脚本里,按Alt + Shift + F10,会弹出此框,选择Edit Configurations...

点击 Edit Configuration,弹出如下选项

Script parameters即为需要传入的参数,多个参数之间用空格分开
修改脚本如下:
import sys
print(sys.argv[0])
print(sys.argv[1])
print(sys.argv[2])
print(sys.argv[3])
运行结果:
F:/PycharmProjects/untitled2/001.py
Hello
Jack
25
Pycharm快捷键
在PyCharm中有很多快捷键:
Ctrl+C:复制光标所在行,无需选中该行
Ctrl+X:剪切光标所在行,无需选中该行
Ctrl+ / :多行代码快捷注释,选中多行,即可为所有的行前加上 #,再次按下,则会取消。
Ctrl+D:复制并粘贴光标所在行,选中多行,则复制并粘贴多行
Ctrl+Shift+n:快捷搜索项目中的某个文件
Ctrl+Alt+I:自动排列好脚本格式
如下脚本:
#!/usr/bin/env python
for x in xrange(5):
print x
File "F:/PycharmProjects/untitled2/001.py", line 17
for x in xrange(5):
^
IndentationError: unexpected indent
脚本中,for循环之前有多余的空格,导致程序执行报错,选中整个for循环语句,Ctrl+Alt+I:自动排列好脚本格式。再次执行,可以得到正确的结果:
F:/PycharmProjects/untitled2/001.py
0
1
2
3
4
Tab:整体代码块缩进
Shift+Tab:取消整体代码块的缩进
Shift+Enter:无论光标在本行的哪个位置,即可以进入下一行进行新的代码编写,并且保持正确的缩进(对应的Ctrl+Enter,是向上一行)
Alt+Enter:快速引用系统模块
如:print(sys.argv[1])写这个语句时,忘记调用sys模块,此句就会有错误;光标放在错误处按Alt+Enter,选择Import 'sys',即可自动插入调用语句import sys:

正确调用:
import sys
print(sys.argv[0])
PyCharm的调试模式
首先,写一个简单的脚本并执行:

如图,可以正常执行完所有的语句。
假如,我们在日常代码编写过程中,需要逐句来排查代码的执行情况,那么就需要使用PyCharm的Debug模式。
在需要Debug的脚本中,点击需要暂停运行的行首,会出现如下图中的小红点。然后选择Debug模式:Shift+F9,或者点击绿色的小图标,然后会进入如下界面:

此时,脚本执行到第8行就会停止,在Console标签里可以看到结果:

如果要继续执行,则按F8可以执行下一句,每次执行一句脚本,直到结束。
pycharm 参数、快捷键、调试模式的更多相关文章
- flask调试模式
想要启用调试模式,发现安装目前网上流行的两种方式均无法在Pycharm中打开调试模式. 1)直接在对象上设置 flask 更新到1.0以后 不支持使用debug =True 来开启调试模式了. Pri ...
- linux安装PyCharm,PyCharm常用快捷键及调试模式,pycharm里面对文件夹或者文件进行重命名
PyCharm常用快捷键及调试模式 2017年10月18日 23:13:43 菜鸟之神 阅读数:5835 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn ...
- python 基础 1.3 使用pycharm给python传递参数及pycharm调试模式
一.通过pycharm 给python传递函数 1. 在pycharm终端中写入要获取的参数,进行获取 1>启动pycharm 中Terminal(终端) 窗口 点击pycharm左下角的图标, ...
- Python_pycharm调试模式+使用pycharm给python传递参数
一.通过pycharm 给python传递函数 1. 在pycharm终端中写入要获取的参数,进行获取 1>启动pycharm 中Terminal(终端) 窗口 点击pycharm左下角的图标, ...
- pycharm 的调试模式 MAC版
进入调试模式 运行和调试快捷键 control +R 运行程序 control +alt +R 快速选择运行/调试配置并运行或编辑它 command +R 重新运行 control +R 重复执行相同 ...
- c# 调试模式下Swaggerf附加接口参数
c# 调试模式下Swaggerf附加接口参数,如:每个接口Header中附加参数appId 1.新增过滤器: public class GlobalHttpHeaderFilter : IOperat ...
- Pycharm:debug调试时使用参数
一种操作方法: 文章链接:MAC下使用Pycharm,debug调试时怎样带参数 今天在网上找了一个例子敲代码,因为我使用的是PyCharm,例子运行时需要带参数,开始不知道怎么带参数,网上搜了大半天 ...
- pycharm常用快捷键总结
http://blog.csdn.net/pipisorry/article/details/39909057 在PyCharm /opt/pycharm-3.4.1/help目录下可以找到Refer ...
- pycharm常用快捷键
Alt+Enter 自动添加包Ctrl+t SVN更新Ctrl+k SVN提交Ctrl + / 注释(取消注释)选择的行Ctrl+Shift+F 高级查找Ctrl+Enter 补全Shift + En ...
随机推荐
- $\mathcal{CSP-S}$,私は来ています
记事本 开个坑.背包dp我是真的一点也不会了... NOIP2014飞扬的小鸟 NOIP2018货币系统 11-4:$Countdown$ $to$ $the$ $tenth$ $day$ 上午 困的 ...
- 奇技淫巧之Delphi和JavaScript互通
http://www.raysoftware.cn/?p=305 Delphi2010以后增加了新的RTTI信息,也就是通过RTTI可以在运行时获取/调用对象的公开成员或者函数. ScriptCont ...
- 20165239 2018——2019Exp8 Web基础
Exp8 Web基础 基础问题回答 (1)什么是表单 •表单在网页中主要负责数据采集功能. •一个表单有三个基本组成部分: ◦表单标签,这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务 ...
- Wannafly Winter Camp Day5 Div1 E题 Fast Kronecker Transform 转化为NTT或FFT
目录 Catalog Solution: (有任何问题欢迎留言或私聊 && 欢迎交流讨论哦 Catalog @ Problem:传送门 原题目描述在最下面. 对给定的式子算解. ...
- Python中使用item()方法遍历字典的例子
Python中使用item()方法遍历字典的例子 这篇文章主要介绍了Python中使用item()方法遍历字典的例子,for...in这种是Python中最常用的遍历字典的方法了,需要的朋友可以参考下 ...
- 介绍Win7 win8 上Java环境的配置
① windows 上的 java 环境搭建:(同时适合xp,vasta,win7,win8,win8.1) ② linux 上的java环境搭建(同时适合linux,unix,mac): 本文主要适 ...
- 剑指offer第二版面试题8:用两个栈实现队列(JAVA版)
题目:用两个栈实现一个队列.队列的声明如下,请实现它的两个函数appendTail和deletedHead,分别完成在队列尾部插入节点和在队列头部删除节点的功能. 分析: 我们通过一个具体的例子来分析 ...
- CentOS 7 启用中文输入法
$HOME/.xinitrc LANG="zh_CN.UTF-8" exec startxfce4
- JUC源码分析-集合篇(六)LinkedBlockingQueue
JUC源码分析-集合篇(六)LinkedBlockingQueue 1. 数据结构 LinkedBlockingQueue 和 ConcurrentLinkedQueue 一样都是由 head 节点和 ...
- phoenix 利用CsvBulkLoadTool 批量带入数据并自动创建索引
需要先创建表: CREATE TABLE IF NOT EXISTS population ( state CHAR() NOT NULL, city VARCHAR NOT NULL, popula ...