我正尝试按照最初在字典中写的顺序打印出我的购物清单的键,这只能帮助我按字母顺序打印键。
这是我当前的代码:
grocery_list = {
"name": "milk",
"cost": "2.99",
"quantity": "2",
}
for i in sorted(grocery_list.keys()):
print(grocery_list[i])
答案 0 :(得分:1)
如评论中所述,dictionaries
是无序容器,但是最新的python
版本会保留插入顺序,因此您可以针对python3.6+
进行插入:
grocery_list = {
'name': 'milk',
'cost':'2.99',
'quantity':'2'
}
for key, value in grocery_list.items():
print(key, value, sep=': ')
>>> name: milk
>>> cost: 2.99
>>> quantity: 2
如果运行旧版python
,则必须以某种方式指定顺序,在这种情况下,该顺序是手动的:
ordered_keys = ['name', 'cost', 'quantity']
for key in ordered_keys:
print(key, grocery_list[key], sep=': ')
>>> name: milk
>>> cost: 2.99
>>> quantity: 2
答案 1 :(得分:0)
键以任意顺序返回,可能有助于参考此link。
答案 2 :(得分:0)
您可以选择使用OrderedDict。
String.Contains()
答案 3 :(得分:0)
对于3.6及更高版本,只需使用grocery_list.keys()
即可获取字典中的所有键。它返回dict_keys(['name', 'cost', 'quantity'])
对于旧版本,可以使用OrderedDict
。这将保留您字典的顺序。