Python 原始输入或输入未通过新行完成

Python 原始输入或输入未通过新行完成,python,input,Python,Input,我正在使用Python语言编程Cedrat Flux(一个有限元软件)。我尝试过的任何Python命令都没有问题,但现在我尝试使用raw\u input()或input()从命令行接收用户信息。不幸的是,尽管Python很普通,但它并没有通过按新行或回车键来停止接收字符。 停止的唯一方法是关闭Flux raw_input(和input,但这种区别在这里似乎不相关)只是从标准输入法读取的。您可以通过读取sys.stdin手动执行此操作: import sys sys.stdin.read(1) #

我正在使用Python语言编程Cedrat Flux(一个有限元软件)。我尝试过的任何Python命令都没有问题,但现在我尝试使用
raw\u input()
input()
从命令行接收用户信息。不幸的是,尽管Python很普通,但它并没有通过按新行或回车键来停止接收字符。 停止的唯一方法是关闭Flux

raw_input
(和
input
,但这种区别在这里似乎不相关)只是从标准输入法读取的。您可以通过读取
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连接到它或直接获取输入。

您可以将所需的数据存储在文件中,然后调用
open(“…/file”).read()
来读取它。

您还没有给我们足够的信息。你能举一个脚本的例子吗?你应该思考,但不应该?如果您能将问题简化为最小的反例,那就更好了。这个行为可能与Flux的Python shell有关。你应该联系他们的支持部门。不幸的是,即使是Flux的演示版本也很难获得,因此Python专家在这里也很难提供帮助。同时,尝试使用
sys.stdin.readline()
读取。这行得通吗?@Katrielex我认为这个问题措辞恰当,坦率地说,这是我从新用户那里看到的最好的问题。示例代码是隐式的:
raw\u input()
似乎重现了这个问题。因此,要澄清的是,这个程序中嵌入了Python shell吗?