如何插入 python 嵌套列表
How to insert into python nested list
我想将一个项目插入到列表中的列表中。我想知道是否有人可以告诉我。
list5 = [[], [(1,2,3,4), 2, 5]]
print("1. list5", list5)
list5.insert(0, (2,5,6,8))
print("2. list5", list5)
Output:
1. list5 [[], [(1, 2, 3, 4), 2, 5]]
2. list5 [(2, 5, 6, 8), [], [(1, 2, 3, 4), 2, 5]]
我要:
2. list5 [[(2, 5, 6, 8)], [(1, 2, 3, 4), 2, 5]]
不幸的是,字典不起作用。
问题是您试图将 list5
作为列表的第一个元素插入,这是不正确的。您必须访问列表的第一个元素并将其插入到该列表中。这可以使用以下代码完成
>>> list5 = [[], [(1,2,3,4), 2, 5]]
>>> print("1. list5", list5)
1. list5 [[], [(1, 2, 3, 4), 2, 5]]
>>> list5[0].insert(0, (2,5,6,8))
>>> print("2. list5", list5)
2. list5 [[(2, 5, 6, 8)], [(1, 2, 3, 4), 2, 5]]
这里的问题是 insert
在应用它的列表中创建了一个 new 项目。所以
>>> list5 = [[], [(1,2,3,4), 2, 5]]
创建一个包含两个元素的列表,第一个恰好是一个包含零个元素的列表:
>>> list5[0]
## []
如果您随后调用 list5.insert(0, foo)
,将会发生的是 foo
被推入列表的位置 0,其他所有内容都被推入(即列表中具有索引为 0 或更大的每个索引增加 1)。
你真正要做的是在list5
的位置0的空列表中插入一个元素。因此,您需要访问该列表,然后调用添加元素的方法。要么
>>> list5[0].append( (2,5,6,8) )
或
>>> list5[0].insert(0, (2,5,6,8) )
会成功的。
def add_new_item(l1):
l1[2][2].append(700)
print(l1)
l1 = [10, 20, [300, 400, [5000, 6000], 500], 30, 40]
add_new_item(l1)
我想将一个项目插入到列表中的列表中。我想知道是否有人可以告诉我。
list5 = [[], [(1,2,3,4), 2, 5]]
print("1. list5", list5)
list5.insert(0, (2,5,6,8))
print("2. list5", list5)
Output:
1. list5 [[], [(1, 2, 3, 4), 2, 5]]
2. list5 [(2, 5, 6, 8), [], [(1, 2, 3, 4), 2, 5]]
我要:
2. list5 [[(2, 5, 6, 8)], [(1, 2, 3, 4), 2, 5]]
不幸的是,字典不起作用。
问题是您试图将 list5
作为列表的第一个元素插入,这是不正确的。您必须访问列表的第一个元素并将其插入到该列表中。这可以使用以下代码完成
>>> list5 = [[], [(1,2,3,4), 2, 5]]
>>> print("1. list5", list5)
1. list5 [[], [(1, 2, 3, 4), 2, 5]]
>>> list5[0].insert(0, (2,5,6,8))
>>> print("2. list5", list5)
2. list5 [[(2, 5, 6, 8)], [(1, 2, 3, 4), 2, 5]]
这里的问题是 insert
在应用它的列表中创建了一个 new 项目。所以
>>> list5 = [[], [(1,2,3,4), 2, 5]]
创建一个包含两个元素的列表,第一个恰好是一个包含零个元素的列表:
>>> list5[0]
## []
如果您随后调用 list5.insert(0, foo)
,将会发生的是 foo
被推入列表的位置 0,其他所有内容都被推入(即列表中具有索引为 0 或更大的每个索引增加 1)。
你真正要做的是在list5
的位置0的空列表中插入一个元素。因此,您需要访问该列表,然后调用添加元素的方法。要么
>>> list5[0].append( (2,5,6,8) )
或
>>> list5[0].insert(0, (2,5,6,8) )
会成功的。
def add_new_item(l1):
l1[2][2].append(700)
print(l1)
l1 = [10, 20, [300, 400, [5000, 6000], 500], 30, 40]
add_new_item(l1)