繁体   English   中英

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

[英]Python script with input not running unless I execute it on terminal

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

python ex3.py

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

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

谢谢你的帮助!

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

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

使用括号,其问题页面显示许多冻结问题,包括已关闭问题和未解决问题。 因此,我将从那里开始,看看您是否可以找到解决方案,或者如果失败则自己解决问题。

据我所知,Atom Script不支持raw_input。 我找不到关于Adobe Brackets的任何信息,但是我在第三方程序方面没有取得太大的成功,所以我想那里也存在类似的问题。 您没有使用IDLE的任何原因吗? 如果您正在寻找更多的IDE环境,我也建议您在Eclipse中使用PyDev软件包。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM