如何将Python字典的分散键整合为单个键、对应值按列表拆分存储
Python 字典转换实现方案
基础实现(固定键名)
原始字典示例:
original_dict = { 'a':['data', 1, 2, 3], 'b':['data2', 4, 3, 2, 1, 0], 'c':['data3', 3, 4, 5, 6] }
Python 3.7及以上版本(字典默认保留插入顺序)可直接提取键值完成转换:
result = { 'letters': list(original_dict.keys()), 'values': list(original_dict.values()) }
如果你使用的Python版本低于3.7,需要手动遍历键值对保证顺序对应:
keys = [] values = [] for k, v in original_dict.items(): keys.append(k) values.append(v) result = {'letters': keys, 'values': values}
自定义键名通用实现
如果需要灵活修改生成结果的两个键名,可封装为通用函数:
def transform_dict(original_dict, key_label='letters', value_label='values'): keys = [] values = [] for k, v in original_dict.items(): keys.append(k) values.append(v) return { key_label: keys, value_label: values } # 调用示例:自定义键名为my_keys和my_values custom_result = transform_dict(original_dict, key_label='my_keys', value_label='my_values')
内容的提问来源于stack exchange,提问作者Stackcans
相关产品推荐
相关产品推荐

