wiem, że mogę przeplatać dwie listy Pythona z:Interleave lista ze stałym elementem
[elem for pair in zip(*lists) for elem in pair]
Teraz trzeba przeplatać listę ze stałym elementem takich jak:
list = [1, 2, 3, 4]
# python magic
output = [1, 0, 2, 0, 3, 0, 4]
Wierzę, że to jest najprostsze i najbardziej oczywiste rozwiązanie. – recursive
Jak działa ten czarodziej? – aitchnyu
@aitchnyu jeśli masz strukturę zagnieżdżoną 'list = [(1,2), (3,4)]' i chcesz ją spłaszczyć, możesz użyć '[elem dla pary na liście dla elem w parze]' weź każdą "parę", a następnie weź każdy "elem" w parę. W powyższym kodzie nie masz par, ale tworzysz parę '(x, 0)' dla każdego elementu 'x' na oryginalnej liście, następnie wykorzystujesz tę samą strategię co poprzednio, aby spłaszczyć listę, uzyskanie '[x1, 0, x2, 0, x3, 0]'. Następnie usuwasz końcowe '0' używając '[: -1]'. –