You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建支持导入含可变数量变量的CSV文件并转为字典的函数

通用CSV导入字典实现

你原来的代码硬编码了所有列的处理逻辑,替换成下面的通用函数即可,不管CSV有多少个字段都能自动适配,生成的字典键会自动按字段名_list的规则命名,和你要求的列表名称一致:

import csv

def csv_to_list_dict(csv_path, encoding='utf-8-sig'):
    result_dict = {}
    with open(csv_path, newline='', encoding=encoding) as csvfile:
        reader = csv.DictReader(csvfile)
        # 初始化所有列对应的空列表,键名自动加_list后缀
        for field in reader.fieldnames:
            # 如果需要把表头里的空格/特殊字符转成下划线符合变量命名规则,启用下面这行处理即可
            # key_name = field.replace(' ', '_').replace('(', '').replace(')', '').lower() + '_list'
            # 不需要修改原表头直接加_list就用下面这行
            key_name = field + '_list'
            result_dict[key_name] = []
        # 逐行填充数据
        for row in reader:
            for field in reader.fieldnames:
                key_name = field + '_list'
                result_dict[key_name].append(row[field])
    return result_dict

# 调用示例
if __name__ == '__main__':
    BL_Music_Records = csv_to_list_dict('bl_printed_music_500.csv')
    # 输出验证
    print(BL_Music_Records.keys())
    print(BL_Music_Records.values())

适配说明

  • 不需要提前手动定义任何列表,函数会自动根据CSV的表头生成所有对应的键和值列表
  • 更换其他CSV文件直接修改调用时的文件路径即可,不需要改动函数内部逻辑

内容的提问来源于stack exchange,提问作者Sasha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 05:15:03