如何按日期快速对字典进行排序

时间:2019-07-31 17:56:01

标签: python performance python-3.7

以下代码生成一个字典,并按日期对其进行排序。

我想减少此代码的处理时间。我的PC上的处理时间约为 0.27 秒。

还有更好的方法吗?

如果可以加快此代码的速度,您可以更改日期数据的类型(此代码中的日期类型将转换为字符串类型)。

import time
import datetime
import random
# 0.27 sec
dic_date = {}
for i in range(0, 100000):
    year = int(random.ramdom()*1000)
    str_date = '{0:%Y-%m-%d %H:%M:%S}'.format(datetime.datetime(year,1,1) + datetime.timedelta(days=i))
    dic_date[i] = {"dummy1":i, "dummy2":i, "date":str_date}

start = time.time()

dic_sorted = sorted(dic_date.items(), key=lambda x:x[1]["date"], reverse=True)

elapsed_time = time.time() - start
print ("elapsed_time:{0}".format(elapsed_time) + "[sec]")

0 个答案:

没有答案