有没有办法将下面的列表重置为所有'False'我有一个使用布尔列表的程序,例如。
bat=[False,False,False,False,False,False,False,False,False,False,False]
当主循环对第二个团队进行第二次迭代时,它仍然带有来自第一个团队的“True”值。我需要清理它,以便第二个团队可以记录正确的分数。
任何帮助将不胜感激。干杯
答案 0 :(得分:4)
为什么不在每次迭代之前重新绑定变量?即,
for team in teams:
bat = [False] * 11
# do whatever
如果您必须就地重置列表,那就是
bat[:] = [False] * 11
或
bat[:] = [False] * len(bat)
答案 1 :(得分:1)
一个简单的列表理解应该可以解决这个问题:
bat = [False for _ in bat]
或乘以len
:
bat = [False] * len(bat)
编辑:您应该使用bat[:] =
进行这些作业(请参阅有关larsmans答案的评论)