我有兩個清單:
lst = [1.1, 1.1, 1.1, 1.1]
keys = [[2, 3, 1, 4], [2, 1, 4, 3], [3, 1, 2, 4], [3, 2, 4, 1]]
我想創建一個字典和輸出串列:
d = [{2: 1.1, 3: 1.1, 1: 1.1, 4: 1.1}, {2: 1.1, 1: 1.1, 4: 1.1, 3: 1.1}, {3: 1.1, 1: 1.1, 2: 1.1, 4: 1.1}, {3: 1.1, 2: 1.1, 4: 1.1, 1: 1.1}]
我努力了 d = [dict(zip(keys, i)) for i in lst]
但這會回傳 TypeError: zip argument #2 must support iteration
任何幫助表示贊賞
uj5u.com熱心網友回復:
對于每一個元素d中keys,你要創建的荏苒中的每個元素創建一個字典l用d,所以
[dict(zip(d, l)) for d in keys]
uj5u.com熱心網友回復:
您需要遍歷鍵:
l = [1.1, 1.1, 1.1, 1.1]
keys = [[2, 3, 1, 4], [2, 1, 4, 3], [3, 1, 2, 4], [3, 2, 4, 1]]
d = [dict(zip(i, l)) for i in keys]
print(d)
輸出:
[{2: 1.1, 3: 1.1, 1: 1.1, 4: 1.1}, {2: 1.1, 1: 1.1, 4: 1.1, 3: 1.1}, {3: 1.1, 1: 1.1, 2: 1.1, 4: 1.1}, {3: 1.1, 2: 1.1, 4: 1.1, 1: 1.1}]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/404586.html
標籤:
上一篇:python字典的查詢語言
下一篇:如何修改用戶輸入請求中的鍵值
