【发布时间】:2019-10-08 17:31:36
【问题描述】:
例如:
list1 = ['abc','def','ghi','jk'`]
output is : list2 = ['adgj','behk','cfi']
基本上list2 中的每个元素i 应该是list1 的每个元素中的第i 个字符。
我知道一般格式类似于使用以下元素创建 list2 直到每个元素的结尾。
[list1[0][0]
[list1[0][1]
[list1[0][2]
....
但是,当我尝试创建 for 循环时,它说我没有索引,并且如果 list1 中的最后一个元素比其他元素小,我还在努力让索引停止。我只需要一些关于如何设置 for 循环的指导吗?
for I in range(Len(list1)):
list2[I]=list1[I][0]
我知道我需要第二个 for 循环来更改索引 0,但在实现时遇到了麻烦
【问题讨论】:
-
你的预期输出是什么?
-
你的例子正确吗?为什么
list2有两次e? -
from itertools import zip_longest; result = list(map(''.join, zip_longest(*List1, fillvalue=''))) -
您应该遍历最小长度列表。
for I in range(min(len(list1), len(list2)):。这应该可以解决问题
标签: python list for-loop nested-loops