如何在python中将元素附加到列表中

如何在python中将元素附加到列表中,python,Python,最后,当我试图打印列表中的所有元素时,只打印了最后一个元素 您需要在循环外创建列表name\u list=[],而不是每次在循环内: 注:只需对您的范围()稍作更改即可: 代码的问题是,在每次迭代中都要重新初始化列表,因此循环完成后,将打印最后一个列表 下面是代码的固定版本 name_list = [] totalNum = int(input("No of people?")) for i in range(totalNum): name = input("Name?")

最后,当我试图打印列表中的所有元素时,只打印了最后一个元素

您需要在循环外创建列表
name\u list=[]
,而不是每次在循环内:

注:只需对您的
范围()稍作更改即可:


代码的问题是,在每次迭代中都要重新初始化列表,因此循环完成后,将打印最后一个列表

下面是代码的固定版本

name_list = []

totalNum = int(input("No of people?"))
for i in range(totalNum):   
    name = input("Name?")
    name_list.append(name)
print(name_list)
还要注意这里使用的
\uuu
,它是python中一个特殊的一次性变量,如果只需要一个伪变量来循环序列,就可以使用它


另外,您不需要像
range(1,totalNum+1)
那样初始化
范围,因为python序列总是从0开始,所以您可以执行
range(totalNum)

这里的问题是在循环中重新初始化了name\u list变量。
尝试将for/in语句置于for之前的每次迭代中创建的新列表Define name_list=[]之外。您可以使用
range(totalNum)
代替
range(1,totalNum+1)
。“你会有一个顿悟的时刻。”沙卡尔佩斯谢谢你的帮助
name_list = []

totalNum = int(input("No of people?"))
for i in range(totalNum):   
    name = input("Name?")
    name_list.append(name)
print(name_list)
totalNum = int(input("No of people?"))
name_list = []
for _ in range(totalNum):
    name = input("Name?")
    name_list.append(name)
print(name_list)