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 ...
随机推荐
- Dart编程实例 - Dynamic 关键字
Dart编程实例 - Dynamic 关键字 void main() { dynamic x = "tom"; print(x); } 本文转自:http://codingdict ...
- auth 模块使用篇
from django.cintrib import auth #登录模块 只要用auth模块一旦登录 就可以在项目的任意地方用request.user 拿到当前的用户对象 再通过 request ...
- 埃氏筛+线段树——cf731F
从2e5-1依次枚举每个数作为主显卡,然后分段求比它大的数的个数,这里的复杂度是调和级数ln2e5,即埃氏筛的复杂度.. #include<bits/stdc++.h> using nam ...
- 使用PaxScript为Delphi应用增加对脚本的支持
通过使用PaxScript可以为Delphi应用增加对脚本的支持. PaxScript支持paxC,paxBasic,paxPascle,paxJavaScript(对ECMA-262做了扩展) 四种 ...
- CF 1082E Increasing Frequency(贪心)
传送门 解题思路 贪心.对于一段区间中,可以将这段区间中相同的元素同时变成\(c\),但要付出的代价是区间中等于\(c\)的数的个数,设\(sum[i]\)表示等于\(c\)数字的前缀和,Max[i] ...
- PAT_A1130#Infix Expression
Source: PAT A1130 Infix Expression (25 分) Description: Given a syntax tree (binary), you are suppose ...
- require.js实现单页web应用(SPA)
本文转载自:https://blog.csdn.net/qq_33401924/article/details/53815922 移动端单页应用基本上是做移动端最流行的的方式了,但是对于很多前端来说, ...
- Android Telephony分析(七) ---- 接口扩展(异步转同步)
本文是基于上一篇<Android Telephony分析(六) —- 接口扩展(实践篇)>来写的.上一篇介绍的接口扩展的方法需要实现两部分代码:1. 从APP至RIL,发送请求:2. 从R ...
- SB般的“WE战队”输掉了比赛
事实再一次证明,对于LOL这种游戏,国服选手是根本就不能有一点期待的, 国服环境太好了,赢了可以吹,输了不能骂,自信心极度膨胀,估计WE俱乐部都没有个心理咨询师, 下岗了还可以再卖卖脸,卖卖饼, 国服 ...
- Vue双向数据绑定原理深度解析
首先,什么是双向数据绑定?Vue是三大MVVM框架之一,数据绑定简单来说,就是当数据发生变化时,相应的视图会进行更新,当视图更新时,数据也会跟着变化. 在分析其原理和代码的时候,大家首先了解如下几个j ...