通过追加在python中填充列表
我正在练习初级Python项目,并尝试做掷骰子模拟器,它将所有骰子的总数存储在一个列表中。然而,由于某些原因,它不起作用。有人能解释一下为什么这样的代码可以工作:通过追加在python中填充列表,python,list,append,Python,List,Append,我正在练习初级Python项目,并尝试做掷骰子模拟器,它将所有骰子的总数存储在一个列表中。然而,由于某些原因,它不起作用。有人能解释一下为什么这样的代码可以工作: n=0 a=[] while n<6: n+=1 a.append(n) print(a) 它只是将最后一个总数打印为一个值的列表。我在这里遗漏了什么?按照wnnmaw的建议,将tots=[]移出while循环。按照wnnmaw的建议,在循环之前的count=0下方将tots=[]移出while循环。在循环之
n=0
a=[]
while n<6:
n+=1
a.append(n)
print(a)
它只是将最后一个总数打印为一个值的列表。我在这里遗漏了什么?按照wnnmaw的建议,将
tots=[]
移出while循环。按照wnnmaw的建议,在循环之前的count=0
下方将tots=[]
移出while循环。在循环之前,在count=0
下面写下它,您可以在每次迭代中重置列表tots=[]
,这样它就永远不会容纳多个元素。尝试将其置于while循环之外:
tots=[]
while roll_again=="y":
...
tots.append(...)
print(tots)
您可以在每次迭代中重置列表
tots=[]
,以便它永远不会容纳多个元素。尝试将其置于while循环之外:
tots=[]
while roll_again=="y":
...
tots.append(...)
print(tots)
在循环的每次迭代中,您都会将列表重新指定为
[]
。天哪,我真蠢……非常感谢您指出这一点!不,你不是。继续工作;)作为旁注,您的if…!='y’…
可以是,而,以从用户处断言有效值(一直询问,直到答案是y
或n
)。(您可能也可以使用str.lower
来解释案例问题,因为提示是Y/N
,但预期的答案是Y/N
)我可能会再次使用roll\u=input(…).lower()
和,而roll\u不在['Y',N']中:
您将列表重新分配为[]
循环的每一次迭代。天哪,我真蠢……非常感谢你指出这一点!不,你不是。继续工作;)作为旁注,您的if…!='y’…
可以是,而,以从用户处断言有效值(一直询问,直到答案是y
或n
)。(您可能还可以使用str.lower
来解释案例问题,因为提示是Y/N
,但预期答案是Y/N
)我可能会再次使用roll\u=input(…).lower()
和,而roll\u不在['Y',N']中: