如何从多列表数据中提取唯一年份并构建目标字典?
解决方法
首先明确需求:从包含重复年份的原始数据中提取唯一年份,将对应字段整理成指定结构的字典(默认保留年份第一次出现的关联数据)。
代码实现
# 原始数据 raw_data = [ [1999, 'teacher', 5], [1999, 'student', 6], [2000, 'doctor', 11] ] # 初始化目标字典 target_dict = {} # 遍历处理每一条数据 for year, field1_val, field2_val in raw_data: year_str = str(year) # 仅当年份未在字典中时添加,确保年份唯一 if year_str not in target_dict: target_dict[year_str] = {'field1': field1_val, 'field2': field2_val} print(target_dict)
说明
- 遍历原始数据时,将年份转为字符串作为目标字典的键(匹配你给出的目标格式)
- 通过
if year_str not in target_dict的判断,自动过滤重复年份,只保留该年份首次出现的field1和field2值 - 如果需要保留最后一次出现的年份关联数据,直接去掉判断语句,每次遍历都覆盖对应键的值即可:
for year, field1_val, field2_val in raw_data: year_str = str(year) target_dict[year_str] = {'field1': field1_val, 'field2': field2_val}
内容的提问来源于stack exchange,提问作者Ken Ist
相关产品推荐
相关产品推荐

