下面的代碼是從一個更大的一塊位。線是2D列表,keyss是1D列表。行中的所有元素與keyss的長度相同。查詢字典理解
datadict = []
for element in lines:
for index in range(len(element)):
datadict.append({keyss[index]: element[index]})
我想知道是否有使用字典理解書寫這種方法?這更像是一個奇怪的問題,因爲所顯示的代碼對我正在做的事很好。我一直在嘗試,也找不到方法。如果你可以閱讀它的外觀,謝謝!
編輯#1:
通過響應閱讀,我意識到這是不是真的工作。我試圖做一個列表理解,其中每個元素都是字典理解。我不完全確定這是否可行。我想製作一個字典列表,其中我將keyss中的每個元素和索引中的索引匹配到列表中的行中的元素,如果這樣做合理的話。
編輯#2: 我發現data_list = [{keyss[i]:row[i] for i in range(len(keyss))} for row in lines]
工作。
我想你已經混淆了名單和字典。你稱之爲'datadict'實際上是一個包含只有一個鍵的字典的列表。這是預期的結果還是你想構建一個大字典? –