dict没有对内容进行排序

2024-06-16 10:55:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我安装了Anaconda3,但我遇到了一个问题,我读到dict是按键自动排序的,但这在我的安装中没有发生

在我正在读的书中有这样一个例子,写在jupyter笔记本上:

enter image description here

这就是应该发生的事情enter image description here

我在https://colab.research.google.com上进行了测试,并获得了有序的输出,那么我的anaconda安装是否存在问题?这只是一种视觉表现吗

对不起我的英语,提前谢谢


Tags: httpscom排序google笔记本jupyter事情dict
3条回答

正如大家所指出的,dict不是按键排序的,jupyter笔记本中的输出使用了一个名为pprint的函数来显示按键排序的,由于某种原因,在我的安装中,这个pprint不起作用。这不是一个错误

谢谢大家

如果希望词典按字母顺序排序,可以执行以下操作:

>>> print(dict(sorted(dic_estados.items())))
{'AM': 'Amazonas', 'BA': 'Bahia', 'MG': 'Minas Gerais', 'PR': 'Parana', 'RN': 'Rio Grande do Norte'}

以下是实现所需输出的方法:

dic_estados = {"PR":"Parana","MG":"Minas Gerais","BA":"Bahia","RN":"Rio Grande do Norte","AM":"Amazonas"}
sorted_dic = {k : v for k, v in sorted(dic_estados.items())}

print(sorted_dic)
#{'AM': 'Amazonas', 'BA': 'Bahia', 'MG': 'Minas Gerais', 'PR': 'Parana', 'RN': 'Rio Grande do Norte'}

相关问题 更多 >