Python中带条件的For循环
我被这个问题困住了。如何创建将1随机添加到[0,0,0,0,0,0]列表中的程序。我想让它一直运行,直到列表中的所有数字至少大于0 我的代码中有三个问题,我不知道它是什么。这是我的代码和列表投票=[0,0,0,0,0,0]: 第7次后停止打印 有时一个项目中有多个1开头 我希望它从列表中的一个1开始,然后在列表中的一个项目中随机添加1 所以我希望列表中至少有一个大于0 我的代码是Python中带条件的For循环,python,Python,我被这个问题困住了。如何创建将1随机添加到[0,0,0,0,0,0]列表中的程序。我想让它一直运行,直到列表中的所有数字至少大于0 我的代码中有三个问题,我不知道它是什么。这是我的代码和列表投票=[0,0,0,0,0,0]: 第7次后停止打印 有时一个项目中有多个1开头 我希望它从列表中的一个1开始,然后在列表中的一个项目中随机添加1 所以我希望列表中至少有一个大于0 我的代码是 Def get_all_prizes(): For items in votes:
Def get_all_prizes():
For items in votes:
Items = random.radiant(0, 5)
Votes[items] + = 1
If items == 0:
False
Else:
Print(votes)
这是印刷品
[0, 0, 0, 0, 1, 0]
[0, 0, 1, 0, 1, 0]
[0, 1, 1, 0, 1, 0]
[0, 1, 2, 0, 1, 0]
[0, 1, 3, 0, 1, 0]
[0, 1, 3, 1, 1, 0]
它只做了6次,有时是这样开始的。我想让它从列表中只有一个数字开始,就像以前打印的东西一样
[0, 1, 2, 0, 1, 0]
[0, 1, 3, 0, 1, 0]
[0, 1, 3, 1, 1, 0]
如果我正确理解您的问题,您可以使用检查每个元素是否大于0,并继续循环,直到此条件完全满足:
import random
n = 6
votes = [0] * n
while not all(votes):
i = random.randrange(0, n)
votes[i] += 1
print(votes)
# [0, 0, 0, 0, 1, 0]
# [1, 0, 0, 0, 1, 0]
# [1, 0, 1, 0, 1, 0]
# [1, 0, 2, 0, 1, 0]
# [1, 0, 2, 0, 1, 1]
# [1, 0, 2, 1, 1, 1]
# [1, 0, 2, 2, 1, 1]
# [1, 0, 3, 2, 1, 1]
# [2, 0, 3, 2, 1, 1]
# [2, 0, 3, 3, 1, 1]
# [2, 0, 3, 4, 1, 1]
# [2, 0, 3, 4, 2, 1]
# [2, 0, 3, 5, 2, 1]
# [2, 0, 3, 6, 2, 1]
# [3, 0, 3, 6, 2, 1]
# [4, 0, 3, 6, 2, 1]
# [4, 0, 3, 6, 3, 1]
# [4, 0, 3, 6, 4, 1]
# [4, 1, 3, 6, 4, 1]
请不要添加任何图像。请将您的代码直接放入问题中。请使用{}按钮将您的代码格式化为代码,并使用带正确大小写关键字的真实代码。您的代码完全不可读。请张贴一份适当的mcve,请阅读-总结是,这不是一个理想的方式来解决志愿者,可能会适得其反获得答案。请不要将此添加到您的问题中。