如何使用嵌套列表值从 defaultdict 中提取值?
How to extract values from defaultdict with nested list values?
我有一个带有嵌套列表值的 defaultdict
,我需要提取输出中显示的值。
dd = defaultdict(list)
print(dd)
输入:
defaultdict(<class 'list'>, {
'1': [[['Peter', '100'], ['John', '200'], ['Carlos', '150'], ['Rick', '25']], ['HR']],
'2': [[['Albert', '200']], ['Travel']],
'3': [[['Mick', '300']], ['IT']]
})
输出:
1,Peter,100,HR
1,John,200,HR
1,Carlos,150,HR
1,Rick,25,HR
2,Albert,200,Travel
3,Mick,300,IT
您需要迭代列表值以获得所需的输出:
for k, v in dd.items():
for vv in v[0]:
print(','.join([k, vv[0], vv[1], v[1][0]]))
这里 v[0]
是您的姓名和号码列表,即 [['Peter', '100']...]
,
v[1]
是部门列表,即 ['HR']
.
以上代码将打印:
1,Peter,100,HR
1,John,200,HR
1,Carlos,150,HR
1,Rick,25,HR
2,Albert,200,Travel
3,Mick,300,IT
您可以使用简单的嵌套循环:
for k,v in dd.items():
for e in v[0]:
print(','.join((k,*e,v[1][0])))
输出:
1,Peter,100,HR
1,John,200,HR
1,Carlos,150,HR
1,Rick,25,HR
2,Albert,200,Travel
3,Mick,300,IT
我有一个带有嵌套列表值的 defaultdict
,我需要提取输出中显示的值。
dd = defaultdict(list)
print(dd)
输入:
defaultdict(<class 'list'>, {
'1': [[['Peter', '100'], ['John', '200'], ['Carlos', '150'], ['Rick', '25']], ['HR']],
'2': [[['Albert', '200']], ['Travel']],
'3': [[['Mick', '300']], ['IT']]
})
输出:
1,Peter,100,HR
1,John,200,HR
1,Carlos,150,HR
1,Rick,25,HR
2,Albert,200,Travel
3,Mick,300,IT
您需要迭代列表值以获得所需的输出:
for k, v in dd.items():
for vv in v[0]:
print(','.join([k, vv[0], vv[1], v[1][0]]))
这里 v[0]
是您的姓名和号码列表,即 [['Peter', '100']...]
,
v[1]
是部门列表,即 ['HR']
.
以上代码将打印:
1,Peter,100,HR
1,John,200,HR
1,Carlos,150,HR
1,Rick,25,HR
2,Albert,200,Travel
3,Mick,300,IT
您可以使用简单的嵌套循环:
for k,v in dd.items():
for e in v[0]:
print(','.join((k,*e,v[1][0])))
输出:
1,Peter,100,HR
1,John,200,HR
1,Carlos,150,HR
1,Rick,25,HR
2,Albert,200,Travel
3,Mick,300,IT