![](/img/trans.png)
[英]How to iterate through a list of tuples and checking each list for a specific order
[英]How to iterate through a list and print the key's in a specific order
我正在嘗試按照最初在字典中寫入的順序打印我的購物清單的鍵,這只能幫助我按字母順序打印鍵。
這是我目前的代碼:
grocery_list = {
"name": "milk",
"cost": "2.99",
"quantity": "2",
}
for i in sorted(grocery_list.keys()):
print(grocery_list[i])
正如評論中所述, dictionaries
是無序的容器,但最近的python
版本保持插入順序,所以你可以只對python3.6+
執行此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
鍵以任意順序返回,參考此鏈接可能會有所幫助。
您可以選擇使用 OrderedDict。
from collections import OrderedDict
d1 = OrderedDict({
'name': 'milk',
'cost': '2.99',
'quantity': '2'
})
print(d1.keys())
對於 3.6+ 版本,只需使用grocery_list.keys()
即可獲取字典的所有鍵。 它返回dict_keys(['name', 'cost', 'quantity'])
對於舊版本,您可以使用OrderedDict
。 這將保留字典的順序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.