Mesclar duas ou mais listas com a ordem de mesclagem especificada

No início, tenho 2 listas e 1 lista que diz em que ordem devo mesclar essas duas listas. Por exemplo, eu tenho a primeira lista igual a[a, b, c] e segunda lista igual a[d, e] e lista "mesclada" igual a[0, 1, 0, 0, 1].

Isso significa: para tornar a lista mesclada primeiro, preciso pegar o elemento da primeira lista, depois o segundo, o primeiro, o primeiro e o segundo ... E acabo com[a, d, b, c, e]. Para resolver isso, usei apenas loop e dois "ponteiros", mas queria saber se posso executar essa tarefa de forma mais pitônica ... Tentei encontrar algumas funções que pudessem me ajudar, mas sem resultado real.

questionAnswers(2)

yourAnswerToTheQuestion