raw_input或input不通过换行完成
我正在用Python语言编程Cedrat Flux(一个有限元软件)。之前我尝试的所有Python命令都没问题。但是现在我想通过命令行获取用户输入,使用的是raw_input()
或input()
。可惜的是,在这个软件里,按下换行键或回车键并不能停止输入字符。唯一能停止输入的方法就是关闭Flux软件!
2 个回答
0
你可以把想要的数据存储在一个文件里,然后用 open(".../file").read()
这个命令来读取它。
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来连接它,或者直接获取输入。