input()的python3 estrange行为

时间:2018-06-28 16:04:06

标签: python python-3.x

我喜欢训练比赛编程,其中输入由多行组成,例如(来自https://practice.geeksforgeeks.org/problems/equilibrium-point/0

2
1
1
5
1 3 5 2 2

我编码:

textIn = input()
print(textIn)

Python控制台中的输出仅捕获第一行。我安装了Pycharm,除了选择“使用Python控制台运行”并且捕获的输入是:

'2\n1\n1\n5\n1 3 5 2 2'

出于我的目的,哪一个很容易分离,但是为什么会有这种区别。最后,我安装了Spyder,它也直接捕获为'2 \ n1 \ n1 \ n5 \ n1 3 5 2 2'。

我问处理多行输入的最佳方法是什么?应该使用哪种方法进行编码?

1 个答案:

答案 0 :(得分:1)

如果您知道输入的行数,或者这是第一个输入,则可以使用:

n = int(input().strip()) #Replace with number of lines of input if known
a= []

for _ in range(n):
    a.append(input().strip())