作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个包含 id,Direction,year,month,day,hour
的字典,我想根据 month,day,hour
对它进行排序。下面是我的字典和它的值:
table = {('2339', 'W', '2016', '6', '2', '11'): [0],
('2339', 'W', '2016', '1', '16', '8'): [0],
('2339', 'W', '2016', '5', '8', '22'): [2],
('2339', 'W', '2016', '1', '17', '3'): [0]}
以及我用来排序的代码:
result_dict = sorted(table.items(), key=operator.itemgetter(0))
但这不会按照我想要的方式对其进行排序。如何根据月、日和小时对其进行排序。我想要的结果是这样的:
ID Direction year month day hour
2339 W 2016 1 1 0
2339 W 2016 1 1 1
2339 W 2016 1 1 2
2339 W 2016 1 1 3
... .. .. .. .. ..
最佳答案
升序:
sorted(table.items(), key=lambda (k,v): map(int, k[3:]))
降序:
sorted(table.items(), key=lambda (k,v): map(int, k[3:]), reverse=True)
关于python - 如何根据不同的关键字段对字典进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43941692/
我是一名优秀的程序员,十分优秀!