Python:向现有元组添加列表(包含列表)[重复]

问题描述 投票:-3回答:3

这个问题在这里已有答案:

我有一个包含两个列表的现有元组:

list_a = [1, 2, 3]
list_b = [4, 5, 6]

tuple = list_a, list_b
tuple = ([1, 2, 3], [4, 5, 6])

如何在没有在包含前两个列表的元组中创建元组的情况下向该元组添加另一个列表?

list_c = [7, 8, 9]

#Code to add list_c to tuple

tuple = ([1, 2, 3], [4, 5, 6], [7, 8, 9])
python list tuples
3个回答
3
投票

您可以将第3个列表包装在单个元组中,然后将其添加到现有元组中:

list_a = [1, 2, 3]
list_b = [4, 5, 6]

tuple1 = list_a, list_b    
tuple1 += ([7, 8, 9],)

print(tuple1)

输出:

([1, 2, 3], [4, 5, 6], [7, 8, 9])

另外,我建议不要使用tuple作为变量名,特别是在处理元组时...


3
投票

首先,使用元组作为变量名是一个坏主意。

其次,元组是不可变的,即你不能改变现有的元组。所以你可以做的是,创建一个新的元组并分配现有的值。

list_a = [1, 2, 3]
list_b = [4, 5, 6]

tuple1 = list_a, list_b

list_c = [7, 8, 9]
tuple2 = tuple1 + (list_c,)

因此,tuple2是你需要的最终元组。希望这可以帮助!


2
投票

tuple = tuple + (list_c,)

您使用列表元组而不是列表列表是否有特殊原因?元组是不可变的,每一步重新分配/重建都比list.append()贵得多。

© www.soinside.com 2019 - 2024. All rights reserved.