Python сортировка двух списков

Я пытаюсь отсортировать два списка вместе:

list1 = [1, 2, 5, 4, 4, 3, 6]
list2 = [3, 2, 1, 2, 1, 7, 8]

list1, list2 = (list(x) for x in zip(*sorted(zip(list1, list2))))

Во всяком случае, делая это дает мне на выходе

list1 = [1, 2, 3, 4, 4, 5, 6]
list2 = [3, 2, 7, 1, 2, 1, 8]

в то время как я хотел бы сохранить первоначальный порядок для равного числа 4 в первом списке: то, что я хочу, это

list1 = [1, 2, 3, 4, 4, 5, 6]
list2 = [3, 2, 7, 2, 1, 1, 8]

Что мне нужно сделать? Я бы нене хочу использовать цикл для пузырьковой сортировки. Любая помощь приветствуется.

Ответы на вопрос(3)

Ваш ответ на вопрос