来出自知乎同名问题。
因为觉得这个问题挺实用,且确实有很多人不了解,故将自己的回答搬运到这里。
我自己开发时候也经常遇到这样的需求:程序运行后,结果不正确,想要调试一下。但这时程序已经关闭,如果要调试,只能在代码里添加输出,重新跑。或者用 debug 模式加断点。虽说这也没毛病,但如果程序比较长,尤其像爬虫类的程序,总是反复重新跑也是蛮蛋疼的。
那有没有别的方法,比如像 python shell 那样,运行之后的变量仍然保持在内存中,可以继续操作?
答案是肯定的。PyCharm 就有这个功能。但不幸的是,这个功能的开启并不在 PyCharm 的 Preference 设置里,自然也就搜索不到,于是很多人并不知道。当时我看了问题下面的所有答案,没有一个提到。包括我自己,在之前某次偶然发现这个功能之后,后来又再次想找,也是在各项菜单、配置栏目里翻了半天才找到。
正确的打开方式如下:
在菜单栏里,选择项目的下拉菜单里选择 Edit Configuration
在对应项目的设置里勾选上 Show command line afterwards
就OK了。
程序执行后会保持在 python shell 的状态,可以对程序中的数据进行调试。
关于 PyCharm,之前还写过一篇:喏,你们要的 PyCharm 快速上手指南,转需。
其中,两个重要的配置:编码和 python 路径,开发前最好确认下。一个实用的功能:断点调试,用好了可以节省很多时间。
『码上行动』在线学习班正在开放中,详情回复 码上行动
近期文章推荐阅读:
只学2个月编程能写出什么代码?他们表示:You can you code!