如果我们不知道条目的数量,那么如何停止while或for的input()循环

时间:2016-08-29 20:03:01

标签: python loops for-loop input while-loop

我试图通过更大的数字条目获得输入,但它说“索引超出范围”

如果我们不知道条目的数量,那么如何在python中停止while或for的input()循环:

while():
 listMatch.append(input())

看看我有什么:

Djokovic:Murray:2-6,6-7,7-6,6-3,6-1 
Murray:Djokovic:6-3,4-6,6-4,6-3 
Djokovic:Murray:6-0,7-6,6-7,6-3 
Murray:Djokovic:6-4,6-4 
Djokovic:Murray:2-6,6-2,6-0 
Murray:Djokovic:6-3,4-6,6-3,6-4 
Djokovic:Murray:7-6,4-6,7-6,2-6,6-2 
Murray:Djokovic:7-5,7-5 
Williams:Muguruza:3-6,6-3,6-3

AND

Halep:Raonic:2-6,6-7,7-6,6-3,6-1
Kerber:Raonic:6-3,4-6,6-4,6-3
Raonic:Wawrinka:6-0,7-6,6-7,6-3
Wawrinka:Raonic:6-4,6-4
Halep:Raonic:2-6,6-2,6-0
Wawrinka:Raonic:6-3,4-6,6-3,6-4
Raonic:Wawrinka:7-6,4-6,7-6,2-6,6-2
Wawrinka:Kerber:7-5,7-5
Halep:Kerber:3-6,6-3,6-3
Halep:Wawrinka:0-6,0-6,6-0,6-0,7-5
Kerber:Wawrinka:6-3,4-6,7-6,0-6,7-5

这里我不知道我想输入多少条目。在上面的例子中有9和11。

3 个答案:

答案 0 :(得分:0)

添加一个检查输入的控制循环:

listMatch =[]
while(True):
    input_value = input()
    if(input_value == '' or  input_value == 'quit'): 
        break
    listMatch.append(input_value)

如果没有输入文字或退出,循环将中断

答案 1 :(得分:0)

只要按下return(没有输入字符串)

,此循环就会停止
listMatch=[]

while True:
    z=input()
    if z:
        listMatch.append(z)
    else:
        break

答案 2 :(得分:0)

listMatch = []

while True:
    # get the user's input
    stuff = input()

    # if they typed "quit", stop looping
    if stuff == 'quit':
        break

    # otherwise append their input to the list and keep on looping
    listMatch.append(stuff)