[英]Tuple into dict in python
我有一個像這樣的元組
([(a,),(b,),...],[(x,),(y,),...])
我想把它轉換成這樣的字典:
sozluk={"a":x,"b":y,...}
我正在尋找一種實踐方法來實現這一點
t = ([(1,),(2,),(3,)],[('a',),('b',),('c',)])
r = {key[0]: value[0] for key, value, in zip(t[0],t[1])}
這也適用於 Python2.7 和 Python3(我使用 ' 創建字符串而不是變量,僅用於測試):
q = ([('a',),('b',)],[('x',),('y',)])
print({k[0]:v[0] for k,v in zip(*q)})
{'a': 'x', 'b': 'y'}
通常,一個簡單的zip
應該可以工作,但在您的情況下,每個項目都是一個元組而不是單個元素。 因此,在這里,我使用一個簡單的列表推導將元組轉換為鍵和值,然后基於具有簡單zip
的字典創建字典( 更多內容):
>>> t = ([("a",),("b",)], [("x",),("y",)])
>>> keys = [i[0] for i in t[0]]
>>> keys
['a', 'b']
>>> values = [i[0] for i in t[1]]
>>> values
['x', 'y']
>>> dict(zip(keys, values))
{'a': 'x', 'b': 'y'}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.