在IDLE中执行脚本后使用Python对象非常方便。那么在PyCharm中,使用交互式python shell有什么方法可以使用脚本对象吗?
例如,我们有一个包含一个文件’test.py’的’test’项目:
a = '123'
print a
执行后我们可以得到结果:
123
Process finished with exit code 0
如何在交互shell中使用字符串’a’?
最佳解决办法
用于当前调试会话的内置python shell
-
在感兴趣代码线上设置一个断点(即通过单击装订线),然后启动调试(在编辑器中右键单击,然后选择调试myfile.py …)。
-
当到达断点时,找到调试> “控制台”选项卡,然后单击“显示命令行”图标(请参见屏幕截图)。
这将启用python shell(请注意屏幕截图上的绿色>>>
),您可以在其中访问当前作用域中的所有变量,并执行通常在Python shell中执行的所有操作。
In recent pycharm versions you get the full ipython interpreter instead of the plain python shell (if ipython is installed).
评估表达式的窗口
作为一个更方便的选择,如果只需要检查一些变量、访问成员或调用范围内的对象的方法,一旦到达断点,请在当前范围中选择一个表达式,right-click – >评估表达式(或使用Run
→Evaluate Expression...
下的菜单中显示的热键),根据需要进行编辑 – 可以键入任何具有自动补全的可用python表达式,然后按Enter键(或者单击Evaluate)来检查结果。
支持多个和多行表达式:要获得Inspect对话框的多行版本,请单击Code fragment模式或在编辑器中选择多行代码,然后评估表达式。可以将值分配给现有变量(无法定义新变量),并运行整个代码块。
鼠标悬停在变量上
要在调试模式下点击断点后查看变量的值,请将鼠标指针悬停在变量上(1-2秒),该变量的值将显示在工具提示中。
提示将包含一个➕
图标 – 点击它将打开一个弹出式检查器。
对于范围内的变量,检查器显示在调试下的底部面板中
次佳解决办法
我发现以前的答案有用,但并不令人满意。所以我在这里提供第三个选项:
将选定的代码加载到控制台(我的建议)
使用Shift
+ Alt
+ E
将所选代码或光标所在行加载到控制台中并立即运行。这也有一些缺点:
-
如果需要运行整个文件,则必须选择整个文件。
-
即使遇到错误,代码也会继续运行。
但是作为回报,我们得到的功能比IDLE更好(在我看来):能够一次运行你的代码。
详见here。
使用断点和评估表达式(Alt
– F8
)(由Piga-fetta建议)
这在大型应用程序中非常有用,我们需要在代码中的某些位置进行调试,但对于交互式编码不太有用。所以这不是我们想要的。
使用工具 – >运行Python控制台(由Games Brainiac和kobejohn建议)
这是我们想要的,但有点麻烦,特别是如果我们要运行的模块不在项目的根目录。
第三种解决办法
可以简单地在PyCharm 2和PyCharm 3中使用Python控制台。可以直接导入,因为项目根目录已经添加到PYTHONPATH
:
所以让我通过一些屏幕截图来演示:
1.在根目录下制作console.py
文件
2.在PyCharm里打开Python控制台
3.从console.py
文件导入变量
到这里,就已经成功地导入变量了。
第四种办法
执行后保持打开命令行
对于仍然有这个问题的人来说:进入运行/调试菜单,选择编辑配置,勾选“显示命令行”这个选项可以让你在控制台的>>>提示并测试你的功能。
全局配置
为了使这个改变适用于所有的.py文件(因为这个复选框只适用于你正在处理的当前文件),请转到:编辑配置,在弹出的对话框中你会看到一个菜单树,选择Defaults ,然后选择Python,然后选中“显示命令行”框,每当你打开一个.py文件时,这会使其成为默认设置,(这个功能默认应该是开启的)。