从while循环Python 3追加到列表

时间:2014-11-12 11:03:20

标签: list loops python-3.x

如何将用户int输入附加到带有while循环的列表中?因此,只要用户输入的数字大于零,就会将其添加到列表中,但是当它为负数时,while循环将会中断并继续执行下一个操作。我是python 3的初学者,我尝试过一些东西,但没有工作。这是我试过的:

numbers=[]
    number = int(input("Please input a number: "))
    while number>=0:
        numbers.append(number)
        if number <0:
            break   

2 个答案:

答案 0 :(得分:0)

那里有两个逻辑错误:

  • 首先,进入while循环后,您永远不会重新提示输入数字。你需要在循环中获得一个新数字,以便你决定在下一次迭代时做什么(附加到列表,或者停止循环)。
  • 其次,您的测试if number < 0是多余的。只要数字大于或等于零,您的循环就会运行;所以在循环内部,数字不可能小于零。上面while的测试已经足够了。

我个人将循环重写为无限循环while True: ...,在循环内我首先提示输入一个数字。如果该数字为<0,我就会break退出循环。否则,循环的其余部分是将新数字附加到列表中。

但是有无数的解决方案。祝你好运!

答案 1 :(得分:0)

你可以使用for-loop代替这个伪代码

if number<0
    // do nothing or something or whatever
else:
    yourRange = range(0,number)
    for count in yourRange:
        numbers.append(number)