python字典是有序的还是无序的,python如何按字典序输出
本文主要介绍如何在python中保持字典的有序性。文章基于Python的相关资料展开细节,有需要的可以参考。
00-1010 1.如何把字典整理好?2.代码演示。(1)OrderedDict有序字典易于使用。(2)竞赛答案模拟写作。
目录
实际案例:
一个编程竞赛系统为参赛者解决编程问题计时。参赛选手做完题后,解题所用的时间被记录在字典里,以便赛后可以通过参赛选手的名字查询成绩。回答时间越短,效果越好。)
第二名如:的李雷用了43分钟,第五名韩梅梅用了52分钟,第一名吉姆用了39分钟。
{ 李雷 : (2,43),韩梅梅 : (5,52),吉姆 : (1,39),}
比赛结束后,需要按名次顺序打印选手成绩。如何实现这一点?
为什么注:使用字典而不是列表?只是为了方便赛后可以点名查成绩。
在Python版本之前,字典是无序的,但在3.6版本之后,字典开始有序。
解决方案:
使用集合。OrderedDict用OrderedDict替换内置的字典Dict,将选手的分数依次存储在OrderDict中。
1、如何让字典保持有序
2、代码演示
d=字典()
打印(d)
d[Jim]=(1,35)
d[Leo]=(2,37)
d[Bob]=(3,40)
打印(d)
#当你想迭代字典时,按条目顺序打印每个条目。
对于d:中的k
打印(k)
#导入有序字典
从集合导入订单直接
d2=OrderedDict()
d[Jim]=(1,35)
d[Leo]=(2,37)
d[Bob]=(3,40)
对于d:中的k
打印(k)
(1)OrderedDict有序字典简单使用
#编程模拟器
玩家=列表( ABCDEF )
#模拟玩家的答题时间
从时间导入时间
从随机导入randint
从集合导入订单直接
d=OrderedDict()
开始=时间()
对于范围(6):中的I
#作为阻塞进程等待用户输入
输入()
#每次随机选择一名选手完成答案。
p=players.pop(randint(0,5 - i))
end=时间()
打印(i 1,p,结束-开始)
#记录你的成绩
d[p]=(i 1,结束-开始)
打印()
打印(- * 20)
#按照进入词典的顺序打印抄本。
对于d:中的k
print(k,d[k])
关于如何在Python中保持字典有序的这篇文章到此结束。有关Python字典顺序的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。