• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

使用pycharm进行交互式shell调试

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

在IDLE中执行脚本后使用Python对象非常方便。那么在PyCharm中,使用交互式python shell有什么方法可以使用脚本对象吗?

例如,我们有一个包含一个文件’test.py’的’test’项目:

a = '123'
print a

执行后我们可以得到结果:

123
Process finished with exit code 0

如何在交互shell中使用字符串’a’?

最佳解决办法

用于当前调试会话的内置python shell

  1. 在感兴趣代码线上设置一个断点(即通过单击装订线),然后启动调试(在编辑器中右键单击,然后选择调试myfile.py …)。

  2. 当到达断点时,找到调试> “控制台”选项卡,然后单击“显示命令行”图标(请参见屏幕截图)。

这将启用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 – >评估表达式(或使用RunEvaluate Expression...下的菜单中显示的热键),根据需要进行编辑 – 可以键入任何具有自动补全的可用python表达式,然后按Enter键(或者单击Evaluate)来检查结果。

支持多个和多行表达式:要获得Inspect对话框的多行版本,请单击Code fragment模式或在编辑器中选择多行代码,然后评估表达式。可以将值分配给现有变量(无法定义新变量),并运行整个代码块。

鼠标悬停在变量上

要在调试模式下点击断点后查看变量的值,请将鼠标指针悬停在变量上(1-2秒),该变量的值将显示在工具提示中。

提示将包含一个图标 – 点击它将打开一个弹出式检查器。

对于范围内的变量,检查器显示在调试下的底部面板中

次佳解决办法

我发现以前的答案有用,但并不令人满意。所以我在这里提供第三个选项:

将选定的代码加载到控制台(我的建议)

使用Shift + Alt + E将所选代码或光标所在行加载到控制台中并立即运行。这也有一些缺点:

  • 如果需要运行整个文件,则必须选择整个文件。

  • 即使遇到错误,代码也会继续运行。

但是作为回报,我们得到的功能比IDLE更好(在我看来):能够一次运行你的代码。

详见here。

使用断点和评估表达式(AltF8)(由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文件时,这会使其成为默认设置,(这个功能默认应该是开启的)。

参考文献

  • interactive shell debugging with pycharm


鲜花

握手

雷人

路过

鸡蛋
专题导读
上一篇:
使用Python进行SSH连接发布时间:2022-05-14
下一篇:
TensorFlow Lite 简介发布时间:2022-05-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap