簡體   English   中英

Python:是否可以在列表聲明中使用列表推導?

[英]Python: is it possible to use list comprehension inside list declaration?

假設我有一個清單:

t = ["3", "4", "5"]

是否可以使用列表理解將此列表包含在另一個列表中?
即:

t2 = ["1", "2", x for x in t, "6", "7"]

結果:

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

是的,這可以通過星形拆包來實現。

考慮,

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

由於* [3, 4, 5]這會將[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"]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM