Ich versuche, zwei Listen zu sortieren zusammen:Python Sortierung zwei Listen
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))))
Wie auch immer, dies zu tun gibt mir auf Ausgang
list1 = [1, 2, 3, 4, 4, 5, 6]
list2 = [3, 2, 7, 1, 2, 1, 8]
während ich möchte die Erstbestellung für gleiche Anzahl halten 4 in der ersten Liste: was ich will ist
list1 = [1, 2, 3, 4, 4, 5, 6]
list2 = [3, 2, 7, 2, 1, 1, 8]
Was muss ich tun? Ich möchte keine Schleife für die Blasensortierung verwenden. Jede Hilfe wird geschätzt.
Nicht sicher, was Ihre Anforderung, können Sie genauer sein? –
@ShawnZhang Behalten Sie die ursprüngliche Reihenfolge in list2 für gleiche Elemente in list1 bei. –
[Blasensortierung] (http://en.wikipedia.org/wiki/Bubble_sort) ist ein bestimmter Algorithmus, der Schleifen erfordert. Beachten Sie auch, dass Ihre zweite Ausgabe nicht einer blasensortierten Ausgabe entspricht. –