簡體   English   中英

將字典元組變成單個字典

[英]turn tuple of dicts into single dict

我有數據:

({'name': 'bob', 'sex': 'male'}, {'name': 'sally', 'sex': 'female'})

我希望有

{'bob': 'male', 'sally': 'female'}

什么是快速,簡便的方法? 數據始終是具有相同鍵/值對的字典的n個長度的元組。

您使用dict理解:

{d['name']: d['sex'] for d in input_structure}

這將產生一個字典,其中的鍵和值取自輸入詞典中的兩個鍵。

如果您使用的是Python 2.6或更早版本,則必須使用生成器表達式調用dict()來代替:

dict((d['name'], d['sex']) for d in input_structure)

演示:

>>> sample = ({'name': 'bob', 'sex': 'male'}, {'name': 'sally', 'sex': 'female'})
>>> {d['name']: d['sex'] for d in sample}
{'bob': 'male', 'sally': 'female'}
>>> dict((d['name'], d['sex']) for d in sample)
{'bob': 'male', 'sally': 'female'}
x = ({'name': 'bob', 'sex': 'male'}, {'name': 'sally', 'sex': 'female'})

print {y['name']:y['sex'] for y in x} 

>> {'bob': 'male', 'sally': 'female'}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM