输入未运行的Python脚本,除非我在终端上执行它

时间:2015-06-17 00:51:18

标签: python raw-input atom-editor adobe-brackets

我目前正在进行一些Python练习,并下载了两个文本编辑器:BracketsAtom。我使用它们是因为我喜欢能够运行程序我用简单的快捷方式编写而不是保存它然后在终端上打开它(我在OS X Yosemite上):

python ex3.py

大多数程序运行得很好,但每当我在程序中包含raw_input()函数并尝试使用Atom或Brackets的快捷方式运行它时,控制台输出就会冻结。它没有显示任何错误,我实际上可以在终端上运行程序就好了。

我想启用此功能,因为使用快捷方式运行我的代码更加方便,而无需每次都保存和切换程序。

感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

使用Atom,我知道这不仅仅是一个python问题,我第一次遇到它Ruby,这是因为Atom does not currently support STDIN
目前唯一的解决方法(仅适用于非交互式脚本)是包含预期stdin输入的数据文件和测试shell脚本,例如:

#!/bin/bash
python3 test_script.py < data_file_with_input

使用Brackets,其问题页面显示a number of freezing issues已关闭的问题和已打开的问题。所以,我会从那里开始,看看你是否可以找到解决方案,或者如果你没有找到解决问题的话。

答案 1 :(得分:0)

从我可以收集的内容来看,Atom Script不支持raw_input。我找不到有关Adobe Brackets的任何信息,但我在第三方程序方面没有取得多大成功,所以我猜这里存在类似的问题。你有没有理由不使用IDLE?如果您正在寻找更多的IDE环境,我也建议您在Eclipse中使用PyDev包。