Skip to main content
 首页 » 编程设计

python,按大小从字典中读取键,以绘制它们

2025年05月04日18davidwang456

我有一个 python 字典,其中包含未排序的键/值对,其中键是日期时间,值是 int。

{"1.12.2015":5, "4.12.2015":3, "2.12.2015":6, ...} 

我现在希望读取键,并按日期排序它们的值,以便使用 pyplot 绘制它们。

结果应该是这样的:

first pair: 
1.12.2015 : 5 
second:  
2.12.2015 : 6 
third: 
4.12.2015 : 3 

问题是,以正确顺序获取日期和值的最佳方法是什么。如果有一个在 python 2.6 中运行的选项,那将是最好的

请您参考如下方法:

使用 lambda 作为键,将每个键转换为日期时间对象:

 from datetime import datetime 
 
d = {"1.12.2015": 5, "4.12.2015": 3, "2.12.2015": 6} 
 
for k in sorted(d, key=lambda x: datetime.strptime(x, "%d.%m.%Y")): 
    print(k, d[k]) 

输出:

1.12.2015 5 
2.12.2015 6 
4.12.2015 3 

根据您的评论,如果您实际上已经有了 datetime 对象,那么您只需简单地排序:

    for k in sorted(d): 
        print(k, d[k])