我需要從字典中創建一個字典(讓我們將其命名為一般)。General 是一個字典,以其他字典作為值和索引(按添加順序)作為鍵。
示例一般:
{
1: {'DATE: ': '2021.12.03', 'TIME: ': '01:50:08', 'LAT: ': '41.1905'}, #was added first
2: {'DATE: ': '2021.12.03', 'TIME: ': '01:50:08', 'LAT: ': '41.1905'}, #was added next (second)
3: {'DATE: ': '2021.12.03', 'TIME: ': '01:50:08', 'LAT: ': '41.1905'}, #was added third and so on
}
示例詞典:
{'DATE: ': '2021.12.03', 'TIME: ': '01:50:08', 'LAT: ': '41.1905'}
我有一個生成上述字典的 for 回圈,我只需要一種方法將它們附加到一個帶有鍵的通用鍵,鍵將是附加字典的順序。
對不起,如果不清楚,我已經盡力了。
uj5u.com熱心網友回復:
如果您想保留插入順序,您應該使用串列而不是字典。從 Python 3.6 開始,字典保留插入順序。但是,這個事實對大多數人來說并不是很明顯,這會使您的代碼更難理解,而且如果您運行的是早于 3.6 的 Python 版本,則不能依賴這種行為。
所以,你有兩個選擇:
- 使用串列并
.append()在您想添加時呼叫。 - 如果您出于某種原因必須使用字典,類似的東西
general[len(general) 1] = # dictionary to append會生成您正在尋找的密鑰。但是,出于上述原因,我再次強烈建議不要這樣做。
uj5u.com熱心網友回復:
此示例假設您要手動輸入資料:
general = {}
def add_to_dict():
n = 0
while True:
n =1
date = input("Enter date: "),
time = input("Enter time: "),
lat = input("Enter latitude: ")
general[f'{n}'] = {'DATE':date,'TIME':time,'LAT':lat}
another = input("Enter another? Y/N: ").capitalize().strip()
if another == 'Y':
another = True
continue
else:
print(general)
break
add_to_dict()
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/403613.html
標籤:
上一篇:在for回圈中檢查邏輯的問題
下一篇:匹配2個串列的順序值
