Neuanordnen der Liste basierend auf der Reihenfolge der anderen Liste

Ich bin sicher, diese Frage hat sich vielleicht gefragt worden, bevor, aber ich kann nicht scheinen, um die richtige Antwort zu finden. Wenn ich zwei Listen

_list1 = ["keyName", "test1", "test2"]
_list2 = ["keyName", "test2", "test1"]

Ich versuche, mit _list1 um Elemente neu anzuordnen, in _list2, so dass Sie der Bestellung entsprechen genau. Was ist der sauberste Weg, das zu tun? Gewünschte Ausgabe:

_list1 = ["keyName", "test1", "test2"]
_list2 = ["keyName", "test1", "test2"]

Ich bin sorry, wenn dies ist ein doppelter, aber bisher bin ich nur in der Lage, Antworten zu finden für eine Liste von zahlen und mit Reißverschluss sortiert () - Methode.

Was ist, wenn die _list2 ist eine Liste von Listen?

_list2 = [["test1", "test2", "keyName"], ["test2", "test1", "keyName"]]

Gewünschte Ausgabe:

_list2 = [["keyName", "test1", "test2"], ["keyName", "test1", "test2"]]

Einer mehr was wäre wenn: Was wäre, wenn ich wollte, zu Sortieren, eine beliebige Liste von Objekten mit _list1 als Schlüssel

_list2 = [[object1, object2, object3], [object1, object2, object3]]

wo:

object1.Name = "keyName"
object3.Name = "test1"
object2.Name = "test2"

also effektiv würde ich erwarten, dass die Ausgabe von:

_list2 = [[object1, object3, objec1], [object1, object3, objec1]]

Ist das möglich?

  • Sind beide von der Liste haben den gleichen Werten genau?
  • möglich, Duplikat der Wie Sie Sortieren einer Liste in python nur durch den Vergleich zu einer separaten Liste?
  • ja, Sie alle haben den gleichen string-Werte. Eine weitere Einschränkung obwohl seine möglich, dass _list2 wird eine verschachtelte Liste von Listen mit Listen der gleiche string-Werte wie so _list2=[["test1", "keyName","test2"]["test2", "test1", "keyName"]]. Also die Werte immer die gleiche sein nur, dass manchmal die Struktur der _list2 ändern könnte
InformationsquelleAutor konrad | 2014-12-31
Schreibe einen Kommentar