【发布时间】:2021-07-07 10:55:37
【问题描述】:
我想用简洁的表达式将 list1 中的所有元素添加到一个大元组中。 list2 的输出给出了我想要的表示, 我如何使用 list3 来实现这一点? 如果我有很多内部元组,则 list2 的表达式不方便。
list1 = ((1,2,3),(4,5,6),(7,8,9),(10,11,12))
list2 = tuple(list1[0] + list1[1] + list1[2] + list1[3])
print(list2)
list3 = tuple(list1[i] for i in range(4))
print(list3)
输出列表2:(1、2、3、4、5、6、7、8、9、10、11、12)
输出列表3:((1, 2, 3), (4, 5, 6), (7, 8, 9), (10, 11, 12))
我发现 list2 使用加法来添加元组,但 list3 中的 for 循环使用逗号。 有没有办法表明内部for循环必须通过添加来添加元组?
【问题讨论】:
-
@quamrana,是的,谢谢!
-
"但 list3 中的 for 循环使用逗号",没有多大意义。
-
无论如何,你可能想要
tuple(x for tup in list1 for x in tup)
标签: python