【发布时间】:2021-11-21 19:08:01
【问题描述】:
我有三个这样的列表:
l1 = ['a', 'b', 'c']
l2 = ['d', 'e', 'f']
l3 = ['h', 'i', 'j']
现在,我要做的是将位于同一位置的所有元素组合在一行上,如下所示:
line_1: 'adh'
line_2: 'bei'
line_3: 'cfj'
有没有比三重嵌套 for 循环更好的方法?
for i in range(len(l1)):
for j in range(len(l2)):
for k in range(len(l3)):
if i == j and j == k:
print(l1[i] + l2[j] + l3[k])
基本上,我试图让某些东西运行得比 O(n^3) 快,因为我有大约 100,000 个项目我想这样做。
不确定 CSV 模块是否有办法做到这一点,但在合并后每一行都将被写入 csv 文件。到目前为止,我还没有找到我正在寻找的东西,并且发现社区中的某个人可能知道如何更好地解决这个问题。
哇,感谢所有查看此内容的人!有几个答案,他们都工作。我将为首先发布的人标记已回答的问题。再次感谢所有观看的人!我什至不知道 zip 功能。
【问题讨论】:
-
我不明白你为什么要写那些内部循环。
-
看看内置的“zip”功能。
-
也许你应该让 Pandas 来处理你的 csv 文件。如果一切正常,您可以投票赞成所有答案:)