cmd Python中的原始输入

cmd Python中的原始输入,python,Python,我对原始输入命令有问题。我在程序中使用它,并在cmd中运行程序。然后它请求输入,但当我粘贴到其中有空行的文本时,python会自动将其作为enter命令。我想让它明白,它不是enter命令,而是新行。我怎样才能做到这一点?要做到这一点,您不能使用raw\u input函数,因为该函数在第一个新行字符之后完成输入的读取。相反,您可以使用: 要完成输入的读取,您必须发送EOF char,在Linux中是Ctrl+D,在Windows中是Ctrl+Z 希望这有帮助 根据python文档,它的设计目的是

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

要做到这一点,您不能使用
raw\u input
函数,因为该函数在第一个新行字符之后完成输入的读取。相反,您可以使用:

要完成输入的读取,您必须发送EOF char,在Linux中是Ctrl+D,在Windows中是Ctrl+Z


希望这有帮助

根据python文档,它的设计目的是将
\n
作为结束输入的键,而不是设计用于另一种交互方式

如果您想使用另一种方式来使用输入,您可以尝试使用或并在行或字符上迭代,然后创建所需的行为


查看问题的答案,例如

如果不看一点代码,很难准确理解问题的原因。你能提供一个简短的程序(10行左右)来重现这个问题吗?第一次搜索给了我这个:
>>>import sys
>>>input = sys.stdin.read()
hi
this text has
new lines
Ctrl^D
>>>print input
hi
this text has
new lines