2013-07-18 11 views

Antwort

2
sorted([tuple(map(int, d.split(":"))) for d in my_time_list]) 

Wo jedes Element in my_time_list der Form ist, dass Sie beschreiben, zum Beispiel:

>>> my_time_list 
["03:12:08", "14:10:01"] 
+0

kehrt [[3, 12, 8], [14, 10, 1]]. Der Datentyp der Elemente in der zurückgegebenen Liste unterscheidet sich von der Eingabeliste, die möglicherweise nicht das ist, was er ist. – hago

+0

Ich gieße oft Zeiteinheiten auf Ints, weil 1) Sie Typprüfung erhalten und 2) es leichtere Interoperabilität mit den Datatimenmodultypen ermöglicht – Owen

0

Sie verwenden kann das Verfahren sort(key=str.lower) sein sollten, da Ihre Zeit als String analysiert wird

5

Nur sorted(time_list) funktioniert gut.

>>> sorted(["14:10:01", "03:12:08"]) 
["03:12:08", "14:10:01"] 
+8

Das funktioniert, weil die Zeiten '0' aufgefüllt werden. – SethMMorton

2
import time 

sorted((time.strptime(d, "%H:%M:%S") for d in time_list), reverse=True)