假设我有一个列表:
t = ["3", "4", "5"]
是否可以使用列表理解功能将此列表包含到另一个列表中?
即:
t2 = ["1", "2", x for x in t, "6", "7"]
结果:
["1", "2", "3", "4", "5", "6", "7"]
答案 0 :(得分:3)
是的,通过拆星可以做到这一点。
考虑
[1, 2, *[3, 4, 5], 6, 7]
由于[3, 4, 5]
,这会将*
列表解压缩到外部列表中。
因此,您同样可以使用列表理解代替。
即
t = ["3", "4", "5"]
t2 = ["1", "2", *[x for x in t], "6", "7"]
#["1", "2", "3", "4", "5", "6", "7"]
请注意,在Python版本< 3.5
中,未实现可迭代的拆包。
因此,可以选择使用+
运算符进行基本串联:
t2 = ["1", "2"] + [x for x in t] + ["6", "7"]