TIM*_*MEX 13 python dictionary list
[{'date': '2010-04-01', 'people': 1047, 'hits': 4522}, {'date': '2010-04-03', 'people': 617, 'hits': 2582}, {'date': '2010-04-02', 'people': 736, 'hits': 3277}]
Run Code Online (Sandbox Code Playgroud)
假设我有这个清单.如何按"日期"排序,这是字典中的项目.但是,"日期"是一个字符串......
Ign*_*ams 32
.sort(key=lambda x: datetime.datetime.strptime(x['date'], '%Y-%m-%d'))
Run Code Online (Sandbox Code Playgroud)
Ale*_*lli 23
幸运的是,ISO格式的日期,这似乎是你在这里,与字符串完全吻合!所以你不需要花哨的东西:
import operator
yourlistofdicts.sort(key=operator.itemgetter('date'))
Run Code Online (Sandbox Code Playgroud)
dam*_*zam 12
Satoru.Logic的解决方案简洁明了.但是,根据Alex的帖子,你不需要操纵日期字符串来使排序顺序正确...所以失去了.split('-')
这段代码就足够了:
records.sort(key=lambda x:x['date'])
Run Code Online (Sandbox Code Playgroud)