我有两个清单。 例如:
a=[10,20,30,40,50,60,70,80]
b=[2,4,6,8,10,12,14,16,18,20,22,24]
假设我想用列表b
中的每个第三个元素替换列表a中的每个第二个元素。
为了我的目的,我使用这个公式为前两个相应的元素执行此操作:
a[1]="{}\n".format(b[2])
但是如何对列表中的所有元素执行此操作?
提前致谢!
答案 0 :(得分:6)
使用索引切片:
a = [10,20,30,40,50,60,70,80]
b = [2,4,6,8,10,12,14,16,18,20,22,24]
a[1::2] = b[2::3]
或者这种格式也很重要:
a[1::2] = map('{}\n'.format, b[2::3])
答案 1 :(得分:2)
试试这个:
for x,y in zip(range(1, len(a), 2), range(2, len(b), 3)):
a[x] = '{}\n'.format(b[y])
或者,简短来说,虽然这是一个直接的替代品,但不进行格式化:
a[1::2] = b[2::3]