another_list = [1, 2, 3, 4, 5, 6]
my_list = ['a', 'b', 'c', 'd', 'e', 'f']
output_list = [another_list[i] if i % 2 == 0 else my_list[i] for i in range(6)]
print(output_list)
这段代码完美运行。有没有其他不使用for循环的直接方法,比如切片函数?
我尝试了上面的方法。
您可以:
zip
获取元组的可迭代对象,其中包含一个切片中的值和另一个切片中的值itertools.chain
展平元组的可迭代。示例:
>>> from itertools import chain
>>> list(chain.from_iterable(zip(another_list[0::2], my_list[1::2])))
[1, 'b', 3, 'd', 5, 'f']