python - Python:是否可以在列表声明中使用列表推导?
问题描述
假设我有一个清单:
t = ["3", "4", "5"]
是否可以使用列表理解将此列表包含到另一个列表中?
IE:
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]
_*
因此,您同样可以使用列表理解来代替它。
IE
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"]
推荐阅读
- ruby-on-rails - 设计忽略自定义创建方法
- javascript - 条纹和反应状态/全局状态的问题
- python - 使用 kivy 编译 python3 以使用工具链命令创建 xcode 项目时出错
- reactjs - Provider 组件的 useEffect 在挂载前运行
- reactjs - 自定义纸张阴影颜色
- mysql - 创建查询以确定哪些 sub_genres 来自哪些区域
- marie - 从 a 到 b 的数字总和的 MARIE 指令
- python - 将文件中的数据附加到列表
- c# - 在添加控制器 Visual Studio 2019 创建一个 ts 文件而不是 cs
- octave - 请解释这个 Octave 错误代码:op1 是 1x12,op2 是 1x3