Spezifisch sortiere eine Liste von Zahlen, die durch Punkte getrennt sind

8

Ich habe eine Liste:

%Vor%

Ich möchte es in der nächsten Reihenfolge sortieren:

%Vor%

Die folgende Methode erzeugt kein Ergebnis:

%Vor%     
Vadim Kiselev 26.01.2014, 09:03
quelle

2 Antworten

9

Nimm den letzten Teil, konvertiere den in einen int und gib ihn als Schlüssel zum Vergleich zurück

%Vor%

Wenn Sie möchten, dass alle Teile berücksichtigt werden , können Sie dies tun

%Vor%

Er entfernt . am Ende der Strings, teilt sie basierend auf . auf und konvertiert dann jeden einzelnen Teil davon in ein int . Die zurückgegebene Liste wird für den Vergleich verwendet.

Sie können mehr darüber lesen, wie verschiedene Sequenzen von Python verglichen werden, hier

Ausgabe

%Vor%     
thefourtheye 26.01.2014, 09:04
quelle
5

Wenn Sie nach allen Ziffern sortieren müssen, erzeugen Sie eine Folge von ganzen Zahlen in der Schlüsselfunktion:

%Vor%

Diese Methode ist robust gegenüber nicht einstelligen Werten zwischen den Punkten.

Demo:

%Vor%

Ihr spezifischer Versuch gibt nur die zweite Zahl in der Liste zurück, die für Ihre Beispieldaten immer 1 ist.

    
Martijn Pieters 26.01.2014 09:08
quelle

Tags und Links