Maneira pitônica de combinar duas listas de forma alternada?
Eu tenho duas listasé garantido que o primeiro contém exatamente mais um item que o segundo. Gostaria de saber a maneira mais pitônica de criar uma nova lista cujos valores de índice par provêm da primeira lista e cujos valores de índice ímpar provêm da segunda lista.
# example inputs
list1 = ['f', 'o', 'o']
list2 = ['hello', 'world']
# desired output
['f', 'hello', 'o', 'world', 'o']
Isso funciona, mas não é bonito:
list3 = []
while True:
try:
list3.append(list1.pop(0))
list3.append(list2.pop(0))
except IndexError:
break
De que outra forma isso pode ser alcançado? Qual é a abordagem mais pitônica?