python - 列表理解 : create 2 items for each item in input list?

标签 python list-comprehension

我有一个列表如下:

list1 = ["pierre", "paul", "jacques"]

我想创建一个包含 6 个项目的新列表:

list2 = ["pierre", "pierre#2","paul","paul#2", "jacques", "jacques#2"] 

我尝试了以下方法:

list2 = [i, "{}#2".format(i) for i in list1 ]

这显然行不通。谁能建议什么可行?

最佳答案

您可以使用嵌套循环来完成:

[item for i in list1 for item in (i, "{}#2".format(i))]

for item in (...) 内循环每次产生 2 个项目。

关于python - 列表理解 : create 2 items for each item in input list?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41388946/

相关文章:

不带 in 的 python 列表理解

python - 如何将 2 列常量添加到指定位置的列表中?

python - 理解列表理解

python - 使用 Python/Flask 管理长时间运行的 API 监听器

python - 在 python 文件中使用 google.protobuf.Any

python - 将变量设置为等于找到关键字的行

python - 如何从Python中的属性获取对象?

python - 将两个嵌套列表压缩到单级字典的最有效方法是什么

python - 将包含列表项的字典展开为字典对列表

python - 如何将列表理解结果作为解压缩列表