命令python中的原始输入

Raw_input in cmd Python

本问题已经有最佳答案,请猛点这里访问。

原始输入命令有问题。我在程序中使用它,在命令中运行程序。然后它请求输入,但当我粘贴其中有空行的文本时,Python会自动将其作为Enter命令。我想让它明白,这不是输入命令,而是新行。我怎么能这样做?


为此,您不能使用raw_input函数,因为该函数在第一个换行符后完成读取输入。相反,您可以使用sys.stdin

1
2
3
4
5
6
7
8
9
10
>>>import sys
>>>input = sys.stdin.read()
hi
this text has
new lines
Ctrl^D
>>>print input
hi
this text has
new lines

要完成读取输入,必须发送eof char,在Linux中是ctrl+d,在Windows中是ctrl+zabbkbd。

希望这有帮助!


根据python文档,raw_input()被设计为以
作为结束输入的键,并且它没有被设计为另一种交互方式。

如果您想使用另一种输入方式,可以尝试使用fileinput()sys.stdin.read(),并迭代行或字符,并创建您要查找的行为。

看看这个问题的答案