python - 如何连接两个列表的笛卡尔积中的字符串
问题描述
我有两个字符串列表:
letters = ['abc', 'def', 'ghi']
numbers = ['123', '456']
我想通过它们循环创建一个不并行的字符串列表,所以zip()
在这里不起作用。
期望的结果:
result = ['abc123', 'def123', 'ghi123', 'abc456', 'def456', 'ghi456']
结果中元素的顺序无关紧要。
有任何想法吗?
解决方案
您可以尝试使用两个嵌套的 for 循环然后进行列表理解:numbers
letters
print([l+n for n in numbers for l in letters])
# ['abc123', 'def123', 'ghi123', 'abc456', 'def456', 'ghi456']
您还可以使用嵌套的 for 循环:
out = []
for n in numbers:
for l in letters:
out.append(l+n)
print(out)
# ['abc123', 'def123', 'ghi123', 'abc456', 'def456', 'ghi456']
推荐阅读
- c# - 我想在 Unity3D Android 应用程序中格式化输入字段
- regex - 仅使用 Regex 和 Bash 功能匹配两个连续的行
- xamarin - 如何以编程方式检索 Visual Studio for Mac 的版本信息?
- python - if item == "If" 和 if 'If' in item 的区别?
- javascript - 从javascript中的特定时区获取当前时间戳
- android - Android MediaProjection 捕获空白区域而不是视频区域
- mysql - 如何过滤具有 DISTINCT 和多个结果的 sql 请求
- python - tensorflow collect similar values from a list
- algorithm - 为定期接收值的算法创建流程图
- regex - 正则表达式和标题行