[英]Converting lists to list of dictionaries
我有以下五個列表:
a = ['RA CROXE-14156', 'RA CROXE-14084', ]
b = ['CR','ENGINEER_NAME','DESCRIPTION','BINARIES']
c = ['John', 'Mark']
d = ['M4 Hiding Emergency Group from mgr menu', 'M4-NRT: SQLCODE_-11300', ]
e = ['TEL', 'mao.SYM']
我需要創建一個這樣的字典列表:
CRS = [
{
'CR': 'RA CROXE-14156'
'ENGINEER_NAME': 'John',
'DESCRIPTION': 'M4 Hiding Emergency Group from mgr menu',
'BINARIES': 'TEL'
},
{
'CR': 'RA CROXE-14084'
'ENGINEER_NAME': 'MARK',
'DESCRIPTION': 'M4-NRT: SQLCODE_-11300',
'BINARIES': 'mao.SYM'
}
]
我需要將五個列表轉換為字典列表。 我怎樣才能做到這一點?
您可以使用以下列表/字典理解,使用zip()
和enumerate()
:
>>> CRS = [{b[i]: v for i, v in enumerate(x)} for x in zip(a,c,d,e)]
>>> CRS
[{'CR': 'RA CROXE-14156',
'ENGINEER_NAME': 'John',
'DESCRIPTION': 'M4 Hiding Emergency Group from mgr menu',
'BINARIES': 'TEL'},
{'CR': 'RA CROXE-14084',
'ENGINEER_NAME': 'Mark',
'DESCRIPTION': 'M4-NRT: SQLCODE_-11300',
'BINARIES': 'mao.SYM'}]
您可以將zip
與dict
一起使用:
a = ['RA CROXE-14156', 'RA CROXE-14084', ]
b = ['CR','ENGINEER_NAME','DESCRIPTION','BINARIES']
c = ['John', 'Mark']
d = ['M4 Hiding Emergency Group from mgr menu', 'M4-NRT: SQLCODE_-11300', ]
e = ['TEL', 'mao.SYM']
result = [dict(zip(b, i)) for i in zip(a, c, d, e)]
輸出:
[{'CR': 'RA CROXE-14156', 'ENGINEER_NAME': 'John', 'DESCRIPTION': 'M4 Hiding Emergency Group from mgr menu', 'BINARIES': 'TEL'}, {'CR': 'RA CROXE-14084', 'ENGINEER_NAME': 'Mark', 'DESCRIPTION': 'M4-NRT: SQLCODE_-11300', 'BINARIES': 'mao.SYM'}]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.