首页 > 解决方案 > 将元素添加到嵌套列表

问题描述

我想在嵌套列表中添加一个元素

my_list = [[0]]*10
x = int(input())   
my_list[x].append(x)

print(my_list)

我期待的输出,如果x=1

[[0], [0, 1], [0], [0], [0], [0], [0], [0], [0], [0]]

但这就是我得到的:

[[0, 1], [0, 1], [0, 1], [0, 1], [0, 1], [0, 1], [0, 1], [0, 1], [0, 1], [0, 1]]

标签: python

解决方案


你用十倍相同的列表指针 [0] 来实例化 my_list。因此,如果您追加到列表中,这将反映在列表中的所有十个元素中。相反,创建您的列表

my_list = [[0] for _ in range(10)]

这将创建 10 个单独的列表。


推荐阅读