首页 > 解决方案 > 将整数和列表作为单个列表附加到列表列表

问题描述

我正在尝试将整数和数字列表附加到列表 a。

a = 4
b = [3,1]
c = []
c.append([a,b])

列表 c 是 [[4,[3,1]]] 但相反,我想附加一个列表,所以 c 应该是 [[4,3,1]]。在这种情况下很难使用扩展函数,因为 c 的长度以及需要附加整数和列表的索引是可变的。此外,这种追加列表和整数的操作需要使用多个不同长度的列表来执行。有人可以解释如何实现这一目标吗?

标签: pythonlistappend

解决方案


这是一种简单的方法,只要您计划附加的列表和整数的数量不大,

a = 4
b = [3,1]
b2 = [5,6,7]
b3 = [2]

b.insert(0,a)
c = []

c.append([x for x in b])
c[0] += b2
c[0] += b3

print(c)

在这里,我扩展了您的示例以涵盖两个附加列表。代码应打印:

[[4, 3, 1, 5, 6, 7, 2]]

基本上,您将整数添加到第一个列表中,b. 然后,您使用列表推导从新b的 in创建一个子列表c。最后,您只需将所有其他列表与+=. c[0]是内部目标列表的位置。

这种方法效率不高,而且非常“手动”,但同样,它似乎适用于元素不多的少量列表。


推荐阅读