文章详情页
请问python2.7和3.6同样是for循环输出字典内容为什么排序不一样
浏览:149日期:2022-07-26 08:18:20
问题描述
请问为什么使用2.7和3.6用同样的for输出字典内容排序不一样?
d = {’Adam’:95,’Lisa’:85,’Bart’:59}for k,v in d.items(): print k,’:’,v #3.6的是print(k,’:’,k)
2.7输出的内容
Lisa : 85Adam : 95Bart : 59
而3.6则是正常显示
Adam:95Lisa:85Bart:59
问题解答
回答1:不要过于纠结字典的排序为何不一样,字典本来就是无序的,如果要有序则需要在返回之前进行排序。在python3中一般会做这样1个操作来减少对内存的使用。
回答2:因为这个
https://docs.python.org/3/wha...
cython 3.6 换了种 dict 的实现方式,提升了性能,而键名自动排序是其附带的一个小小的副作用。
相关文章:
1. javascript - angular左右滑动如何切换路由状态,????2. node.js - nodeJS 写入文件的内容怎么不是按次序的?3. javascript - 求一款靠谱点的移动端图片查看器插件,老司机速进!4. docker gitlab 如何git clone?5. debian - docker依赖的aufs-tools源码哪里可以找到啊?6. mysql sql where id in(25,12,87) 结果集如何用按照 25 12 87排序?7. 数据库创建失败8. jupyter-notebook - Mac下启动jupyter notebook后没有Python的选项?9. css3的transform问题10. 这是什么情况???
排行榜

网公网安备