带有EOD的Python 3中的多行用户输入

时间:2016-01-27 22:57:47

标签: python python-3.x input

我试图创建一个接受多行文本的新输入函数。到目前为止我所做的工作有效,但不适用于我大学使用的测试程序。

如何让终端读取EOD信号(在我的Mac上按Ctrl + D)而不是让换行符终止代码?

buffer = []
while True:
    line = input()
    if line == "":
        break
    buffer.append(line)
return " ".join(buffer)

1 个答案:

答案 0 :(得分:1)

您可以尝试执行此操作,而不必使用input(),但如果您要使用input(),则会在名为EOF的{​​{1}}上引发异常您可以抓住:

EOFError