采取多行用户输入

时间:2016-10-21 19:17:27

标签: python python-3.x

最初我们不知道我们要采取多少输入,输入的格式如下

sam
edward
harry

到目前为止,我尝试过使用split()和splitlines()

queryName = input().split('\n')
print(queryName)

它仅给出['sam'],并且对splitlines()也有相同的结果。 我们如何将所有这些价值作为输入?

2 个答案:

答案 0 :(得分:2)

input读取一行输入。你需要循环阅读。

这里我假设一个空输入(即两个新行接一个)表示输入结束:

result = []
while True:
    s = input()
    if s:
        result.append(s)
    else:
        break

答案 1 :(得分:1)

这将获得标准输入的所有行。这意味着它不应该是交互式的,因为它永远不会结束,例如它应该来自文件或进程。

import sys
lines = list(sys.stdin)

可替换地:

for line in sys.stdin:
    # do something with line