0
我正在使用Python3,我目前正試圖重構一些代碼,特別是這看起來有點草率。現在我有一個循環標準,通過元組列表並將它們與硬編碼密鑰配對。是否有更多pythonic方式來處理合並列表元組列表到字典中?
values = [
(1, 'test1', 15.5),
(2, 'test2', 31.67),
(3, 'item1', 16.5),
(4, 'bike1', 15.5),
]
keys = ['id', 'name', 'price']
items = []
for row in values:
items.append({'id': row[0], 'name': row[1], 'price': row[2]})
return items
下面是一個類似的文章 More efficient way to create JSON from Python
但是我有一個很難搞清楚如何如何處理這個事實我兩組數據是相當不同的
items = [row for row in result]
columns = [key[0] for key in cursor.description]
print([{key: val} for key, val in zip(columns, items)])
我凸輪與此相適應,理論上可以將其濃縮爲一行。但是,由於我的數據是不是1對1(即列表VS tupels列表)它給了我這個...
[{'id': (1, 'bike2', 15.5)}, {'name': (2, 'test', 31.67)}, {'price': (3, 'bike3', 15.5)}]
UPDATE
這是我最後的解決方案,謝謝馬亭!
items = [dict(zip([key for key in keys], row)) for row in result]