【发布时间】:2021-12-06 19:21:49
【问题描述】:
我有一个列表,它本身就有这样的子列表:
[['0794156', 'FLU4', 'GLAXOSMITHKLINE BIOLOGICALS', 'JZ3B7', 'UNK', 'IM', 'LA', 'INFLUENZA (SEASONAL) (FLUARIX QUADRIVALENT)'], ['0794157', 'VARZOS', 'GLAXOSMITHKLINE BIOLOGICALS', '', 'UNK', '', '', 'ZOSTER (SHINGRIX)'], ['0794158', 'VARZOS', 'GLAXOSMITHKLINE BIOLOGICALS', '', 'UNK', '', '', 'ZOSTER (SHINGRIX)'], ['0794160', 'VARZOS', 'GLAXOSMITHKLINE BIOLOGICALS', '', '1', 'IM', 'RA', 'ZOSTER (SHINGRIX)']]
我希望第 7 个索引值(例如“ZOSTER (SHINGRIX)”之类的疫苗名称)成为新字典 d={} 的键,并且这些键的值应该是具有疫苗 ID 的列表(第 0 个索引)相同的键。
例如:
{'INFLUENZA (SEASONAL) (FLUARIX QUADRIVALENT)':['0794156'],'ZOSTER (SHINGRIX)' : ['0794157','0794160']}
有人可以帮忙提供一个简单的python解决方案而不导入任何东西吗?
【问题讨论】:
-
对于简短版本,请尝试
d = defaultdict(list); *map(lambda v: d[v[7]].append(v[0]), my_list),
标签: python list dictionary