假设我有这样的Python列表:
master_list = ['a_1', 'b_4', 'd_2', 'c_3',
'a_2', 'c_1', 'd_4', 'b_3',
'd_3', 'c_2', 'a_4', 'b_1',
'c_4', 'a_3', 'b_1', 'd_1']
列表中的每一项都是字母、下划线和数字。我想要一个字典在嵌套列表中按数字对这些项目进行分组,如下所示:
sortd_dict = {'1': [], '2': [], '3': [], '4':[]}
虽然我可以使用以下内容来填充我的嵌套列表,但这似乎很尴尬。有没有更有效的方法来实现这一目标?
for item in master_list:
if '_1' in item:
sortd_dict['1'].append(item)
elif '_2' in item:
sortd_dict['2'].append(item)
elif '_3' in item:
sortd_dict['3'].append(item)
elif '_4' in item:
sortd_dict['4'].append(item)
拆分索引并使用它附加到右侧列表:
sortd_dict[item.split('_')[1]].append(item)