3

我经常在编码时使用ipython(或常规的 python shell)来测试 python 代码片段,它非常有用。但是,这样做的一个缺点是,如果我想测试多行代码段,或者想在运行之前编写多行代码,那么必须“逐行”执行它并不是很方便。甚至返回更改某些行也很麻烦,因为您必须重新键入后面的所有代码。

我现在正在玩 Groovy,我发现它有一个很好的解决这个问题的方法:Groovy Console。您只需编写所有您想要的代码,就像一个普通的编辑器;然后你点击运行 Ctrl+R(实际上是 Cmd+R,因为我在 Mac 上)它会立即运行所有内容。如果您想更改某些内容(例如,如果有错误),那也很容易——只需更改它并再次按 Ctrl+R。

是否有等效的可用于 python 的?或者您对实现类似行为的方法有什么建议?我可以创建一个新文件,保存它,然后python <filename>.py从 shell 中。但这只是太多的步骤,而且会很麻烦。Eclipse 可能是一个选项,但它太重量级了。我真的在寻找轻量级的东西,当我想测试一些东西时我可以启动它,然后尽快摆脱它。

我很想听听任何想法/建议!

谢谢

4

4 回答 4

4

你可以试试DreamPie 。据我快速阅读您链接到的 groovyConsole 页面可以看出,DreamPie 具有类似的输入区域/输出区域划分(他们称之为“代码框”和“历史框”)。默认情况下,您执行的代码会从代码框中清除 - groovyConsole 显然不会这样做 - 但您可以轻松检索它(Ctrl+Up),或将首选项设置更改为“执行后将代码保留在代码框中”。

于 2011-02-09T12:25:19.690 回答
3

您是否尝试过使用IDLE标准 Python IDE?您必须将代码保存<filename>.py在 IDLE 中,但之后您可以使用 F5 运行它。

Python 文档链接到这个 IDLE 介绍,即使它有点过时也可能会有所帮助。

于 2011-02-09T02:52:39.510 回答
2

我正在使用 emacs 及其 python 模式。
C-c C-c: 评估当前缓冲区
,但您也可以评估区域(即选择)、功能等...

你甚至可以让 python-mode 使用 ipython (就像我一样)。
请参阅http://ipython.scipy.org/dist/ipython.el。它工作得很好

于 2011-02-09T13:14:38.913 回答
1

你试过 PyCrust 吗?它具有出色的多行编辑、复制/粘贴支持。

PyCrust 可以在wxPython Docs and Demos中找到。

于 2011-02-09T02:57:44.437 回答