检查for循环中的多个输入

时间:2018-08-10 07:06:03

标签: python python-3.x list for-loop input

n_lines = int(input('How many lines do you want to input?'))

lines = [input() for i in range(n_lines)]

如果用户击中5或更高的数字,我想打破循环。

2 个答案:

答案 0 :(得分:1)

这应该为您提供所需的输出:


n_lines = int(input('How many lines do you want to input?'))

lines = []
for i in range(n_lines):
    x = input()
    lines.append(x)
    if int(x) >= 5:
        break

print(lines)

答案 1 :(得分:-1)

在坚持不懈地解决这一问题之后,我将执行以下操作:

n_lines = int(input('How many lines do you want to input?'))
lines = [input() for i in range(5 if n_lines>5 else n_lines)]

编辑

我完全误解了这个问题。 OP的要求对我来说似乎是不可能的,因为您在第二行所做的只是定义范围。到目前为止,您无法在同一行中添加更多功能(也许是Python的未来版本?)。

其他人也指出的最佳解决方案是

n_lines = int(input('How many lines do you want to input?'));
lines=[]
for i in range(0,n_lines):
  n = int(input("Enter a number: "))
  if n>=5:
    break
  lines.append(n)
print(lines)