我正在尝试将随机int运算符生成的所有大于10的数字都添加到我的列表(lisps)中,并打印出所有小于10的数字。每当我运行它时,它都不会返回输出。您可以仔细查看一下,看看问题出在哪里。
from random import randint
lisps = []
rand = randint(0,20)
while len(lisps) > 5:
if rand > 10:
lisps = lisps.append(rand)
print(f'{rand} Greater than 10')
elif rand < 10:
print(rand)
print(f'{rand} less than 10')
#It doesn't print anything.
答案 0 :(得分:2)
仅当lisps包含5个以上的项目时才执行循环。但是lisps开始时是空的,因此甚至从未进入循环,并且lisps仍然是空的。
也许您是说while len(lisps) < 5:
,以便只要少于5个项目就执行循环?
答案 1 :(得分:1)
没关系,我明白了。我看到我把大于5而不是小于5放置了。
答案 2 :(得分:0)
from random import randint
lisps = []
while len(lisps) < 5:
rand = randint(0,20)
if rand > 10:
lisps.append(rand)
print(lisps)
print(f'{rand} Greater than 10')
elif rand < 10:
print(rand)
print(f'{rand} less than 10')
这可以工作!
您还将仅生成一次random int
。将其放在while
中,以便每次都附加不同的值。
追加到列表的正确方法是lisps.append(rand)
,而不是您完成的方法。