Estou tentando obter o caminho mais curto (caractere possível) para obter a Lista 3.
As listas 1 e 2 já me são apresentadas como argumentos e têm o mesmo comprimento.
l1 = [1, 2, 3, 4, 5]
l2 = ['a', 'b', 'c', 'd', 'e']
E a Lista 3 deve ter a aparência (sim, precisa ser uma lista):
l3 = ['a', 1, 'b', 2, 'c', 3, 'd', 4, 'e', 5]
l3 = ['a', 1, 'b', 2, 'c', 3, 'd', 4, 'e', 5]
dadal1 = [1, 2, 3, 4, 5]
el2 = ['a', 'b', 'c', 'd', 'e']
já atribuído, ou é a ideia de quel1
el2
poderia ser quaisquer duas listas do mesmo tamanho?Respostas:
Zip and Sum
Experimente online!
Fecha as duas listas e adiciona todas as tuplas para formar uma lista combinada. O zip funciona apenas se as listas tiverem o mesmo tamanho, caso contrário, truncará a lista mais longa.
Adicionado o ambiente
[* ]
para transformá-lo em uma lista, como sugere FryAmTheEggman.fonte
list
invés de[* (...) ]
+3 bytes.Atribuição de fatia
São três bytes mais longos do que a solução de Jo King
c=[*sum(zip(b,a),())]
, mas são bacanas. Pode ser mais curto situacionalmente (embora não consiga pensar onde).fonte