print('---------------------------------时间排序--------------------------------')
'''
前提:一天内时间升序
思路:将时间转换为最小单位s秒计和,最后比较输入
'''
#将时间依次放入列表中,并计算存放个数,这个可以根据个人习惯优化输入
str1 = '20:41:08.023'
str2 = '10:1:09.211'
str3 = '08:01:22.0'
list=[str1,str2,str3]
n = 0
sum_list = []
dict={}
for i in list:
n+=1
#将列表的小时,分钟,秒分别取出进行计数总共多少秒
for i in range(0,n):
list1 = list[i]
list2 = list1.split(':')
h = int(list2[0])
m = int(list2[1])
s = float(list2[2])
sum = int(s+m*60+h*3600)
sum_list.append(sum)
#这里有个困扰了好久的问题,将时间求和排序以后怎么输出时间,我用的是字典,相应的总和是一个时间
dict[str(sum_list[-1])]= str(list1)
#最后我们遍历字典完事了
sum_list.sort()
for i in sum_list:
print(dict[str(i)])
打印控制台结果:
标签:python,sum,list,list2,时间,dict,排序 From: https://www.cnblogs.com/lish007/p/16795831.html
个人觉得这个思路可能比较绕来绕去,有更简便和优化的地方,欢迎留言!!