raw_input或输入未通过换行完成

时间:2011-05-21 14:47:06

标签: python input

我使用Python语言编写Cedrat Flux(有限元软件)。无论我尝试过什么Python命令都是O.K.但现在我尝试使用raw_input()input()从命令行接收用户信息。不幸的是,尽管使用普通的Python,它仍然不会通过按New Line或Enter键来停止接收字符。 停止的唯一方法是关闭Flux!

2 个答案:

答案 0 :(得分:0)

raw_input(和input,但这种区别似乎与此无关)只是从stdin读取。您可以通过阅读sys.stdin

手动执行此操作
import sys
sys.stdin.read(1) # Read one character. '\n' means newline
sys.stdin.readline() # Read a single line, should be the same as raw_input()

如果这不起作用(即sys.stdin.read(1)也会阻塞,即使输入内容也是如此),标准输入可能已被主机应用程序重定向(在您的情况下为Flux)。您可以使用主机应用程序的API连接到它或直接获取输入。

答案 1 :(得分:0)

您可以将所需数据存储在文件中,然后拨打open(".../file").read()进行阅读。