У меня длинный список времени в формате hh:mm:ss
и я хочу их заказать. Предположим для простоты приведенный ниже список:
l=['07:35:00','01:51:00','04:38:00','09:31:00','12:40:00','06:30:00','12:02:00','04:20:00','02:33:00']
как я могу получить это по порядку, используя некоторые модули или фрагмент кода, который делает это и проще, чем мой код?
Ответ: ['1:51:0','2:33:0','4:20:0','4:38:0','6:30:0','7:35:0','9:31:0','12:2:0','12:40:0']
Моя попытка:
Я написал следующую функцию, которая делает это:
def time_sorting(l):
t = [ list(map(int, i.split(':'))) for i in l ]
a = np.asarray(t)
h = a[np.argsort(a[:,0])]
a[np.argsort(a[:,0])]
t_l = list()
for i in range(24):
t_l.extend( h[ h[:, 0] == i] [np.argsort(h[ h[:, 0] == i ][:,1]) ].tolist() )
t_f = [':'.join(list(map(str,i))) for i in t_l]
return t_f
Кроме того, у меня есть другая проблема, которая теряет нули. Пожалуйста, помогите мне с этим, чтобы сохранить нули, как они были.