【发布时间】:2021-10-03 13:00:54
【问题描述】:
我的头快要爆炸了。
我有 x 个列表,每个列表都有 y 长度,如下所示:
list1 = ["text11","text12", "text13"]
list2 = ["text21","text22", "text23"]
list3 = ["text31","text32"]
我正在尝试获取一个列表,其中包含每个列表中内容的所有“组合”的字符串连接,并用“+”分隔它们:
listFinal = ["text11 + text21 + text31",
"text11 + text21 + text32",
"text11 + text22 + text31",
"text11 + text22 + text32",
"text11 + text23 + text31",
"text11 + text23 + text32",
...
"text13 + text23 + text32",
如果列表的长度和数量使用嵌套循环保持不变,我可以使其工作,但由于列表的数量和长度可能会有所不同,我无法为上帝的爱弄清楚如何做到这一点。
在很多事情中,我尝试过创建一个包含我的列表的列表,然后使用嵌套循环在其中尝试执行大列表长度的操作。这给了我只有“成对”的组合。
list = [list1, list2, list3]
for l in range(len(list)):
for li in list[l]:
for lii in list[l+1]:
print("li",li,"lii",lii)
这对我来说很难解释,但我希望它有点道理。
关于如何使它输出具有不同大小和长度的子列表的最终列表有什么建议吗?提前谢谢你
【问题讨论】:
标签: python string list combinations