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可以执行下一句,每次执行一句脚本,直到结束。