cmd Python中的Raw_input

时间:2013-12-08 15:21:14

标签: python

我有raw_input命令的问题。我在程序中使用它并在cmd中运行程序。然后它询问输入,但是当我粘贴那里有空行的文本时,python会自动将其作为输入命令。我希望它理解它不是输入命令而只是新行。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

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

>>>import sys
>>>input = sys.stdin.read()
hi
this text has
new lines
Ctrl^D
>>>print input
hi
this text has
new lines

要完成读取输入,您必须发送EOF字符,在Linux中 Ctrl + D ,在Windows中 Ctrl + ž

希望这有帮助!

答案 1 :(得分:1)

根据python文档,raw_input()旨在将\n作为结束输入的键,并且它不是为另一种交互方式而设计的。

如果您想使用其他方式使用输入,可以尝试使用fileinput()sys.stdin.read()并迭代线条或字符,并创建您正在寻找的行为。

查看问题的答案,例如that one