加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

按日期排序列表的python字典

发布时间:2020-12-20 11:35:08 所属栏目:Python 来源:网络整理
导读:我正在写一个Django项目作为学生实习生. 我的 python文件中有以下数据列表字典: list_sequences = {'01': [["Calcul Red Shift","2014-09-24","Running"]],'02': [["Calcul Dérive","2014-09-22","Stopped"]],'03': [["Calcul simple","2014-04-12","Pause
我正在写一个Django项目作为学生实习生.
我的 python文件中有以下数据列表字典:

list_sequences = {'01': [["Calcul Red Shift","2014-09-24","Running"]],'02': [["Calcul Dérive","2014-09-22","Stopped"]],'03': [["Calcul simple","2014-04-12","Paused"]],'04': [["Calcul Mental","2014-02-14","Failed"]],'05': [["Sauvegarde des données","2014-12-22",'06': [["Envoi des données","2014-07-17",'07': [["Calcul de LA question","2015-01-06",'08': [["Refactorisation",'09': [["Cuisson de choucroute","2013-11-13",'10': [["Ecriture du rapport","2014-02-03",'11': [["Nettoyage des fichiers",'12': [["Création des utilisateurs","Failed"]]
}

如您所见,每个元素的关键是01,02,…

我也使用double [[]],因为我使用字符串,否则网页只显示表格单元格中的一个字符.

我想做的是按日期排序整个字典.

我尝试了以下方法:

list_sequences = collections.OrderedDict(sorted(list_sequences.items(),key=lambda e: e[0][1]))

还有这个:

list_sequences = collections.OrderedDict(sorted(list_sequences.items(),key=lambda e: datetime.datetime.strptime(e[0][1],'%Y-%m-%d')))

但它似乎没有用.第一个以奇怪的方式对我的列表进行排序,第二个给我一个:

time data '0' does not match format '%Y-%m-%d'

任何的想法 ?

非常感谢 !

解决方法

dict.items()返回(键,值)对,因此值在索引1(e [1])而不是0(e [0]).您需要将e [0] [1]更改为e [1] [0] [1].

演示:

>>> OrderedDict(sorted(list_sequences.items(),key=lambda e:datetime.strptime(e[1][0][1],'%Y-%m-%d')))
OrderedDict([('09',[['Cuisson de choucroute','2013-11-13','Running']]),('10',[['Ecriture du rapport','2014-02-03',('04',[['Calcul Mental','2014-02-14','Failed']]),('03',[['Calcul simple','2014-04-12','Paused']]),('06',[['Envoi des donnxc3xa9es','2014-07-17','Stopped']]),('02',[['Calcul Dxc3xa9rive','2014-09-22',('11',[['Nettoyage des fichiers','2014-09-24',('01',[['Calcul Red Shift',('08',[['Refactorisation',('05',[['Sauvegarde des donnxc3xa9es','2014-12-22',('12',[['Crxc3xa9ation des utilisateurs','2015-01-06',('07',[['Calcul de LA question','Running']])])

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读