listas - sort python 3
Lista de Python ordenada en orden descendente (5)
En una línea, usando un lambda
:
timestamp.sort(key=lambda x: time.strptime(x, ''%Y-%m-%d %H:%M:%S'')[0:6], reverse=True)
Pasando una función a list.sort
:
def foo(x):
return time.strptime(x, ''%Y-%m-%d %H:%M:%S'')[0:6]
timestamp.sort(key=foo, reverse=True)
¿Cómo puedo ordenar esta lista en orden descendente?
timestamp = [
"2010-04-20 10:07:30",
"2010-04-20 10:07:38",
"2010-04-20 10:07:52",
"2010-04-20 10:08:22",
"2010-04-20 10:08:22",
"2010-04-20 10:09:46",
"2010-04-20 10:10:37",
"2010-04-20 10:10:58",
"2010-04-20 10:11:50",
"2010-04-20 10:12:13",
"2010-04-20 10:12:13",
"2010-04-20 10:25:38"
]
Esto le dará una versión ordenada de la matriz.
sorted(timestamp, reverse=True)
Si desea ordenar en el lugar:
timestamp.sort(reverse=True)
Simplemente puede hacer esto:
timestamp.sort(reverse=True)
Ya que su lista ya está en orden ascendente, simplemente podemos revertir la lista.
>>> timestamp.reverse()
>>> timestamp
[''2010-04-20 10:25:38'',
''2010-04-20 10:12:13'',
''2010-04-20 10:12:13'',
''2010-04-20 10:11:50'',
''2010-04-20 10:10:58'',
''2010-04-20 10:10:37'',
''2010-04-20 10:09:46'',
''2010-04-20 10:08:22'',
''2010-04-20 10:08:22'',
''2010-04-20 10:07:52'',
''2010-04-20 10:07:38'',
''2010-04-20 10:07:30'']
tu tipo simple
timestamp.sort()
timestamp=timestamp[::-1]