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

如何遍历字典读取数据并将结果写入对应变量?

问题:遍历字典批量处理CSV并生成对应变量

原始信息

映射字典

mapping = {"Filename1": 999, "Filename2": "998"}

单文件处理代码

import pandas as pd

read="Filename1"
code=999

df=pd.read_csv(f'{read}.csv')
df['new_col'] = code
Filename1 = df

需求

读取指定文件名的CSV文件,添加含对应code值的新列,并将结果赋值给与文件名同名的变量,需通过遍历上述字典批量完成该流程,自动生成对应变量。


解决方案

方法1:直接生成同名全局变量

遍历字典的键值对,利用globals()函数将处理后的DataFrame直接绑定到与文件名同名的全局变量:

import pandas as pd

mapping = {"Filename1": 999, "Filename2": "998"}

for filename, code in mapping.items():
    df = pd.read_csv(f"{filename}.csv")
    df['new_col'] = code
    globals()[filename] = df

执行后即可直接使用Filename1、Filename2变量,它们分别对应处理后的DataFrame。

方法2:用字典统一存储(更推荐)

直接生成全局变量易造成命名污染,更推荐将所有处理后的DataFrame存入一个字典,便于管理:

import pandas as pd

mapping = {"Filename1": 999, "Filename2": "998"}
processed_dfs = {}

for filename, code in mapping.items():
    df = pd.read_csv(f"{filename}.csv")
    df['new_col'] = code
    processed_dfs[filename] = df

# 调用示例:processed_dfs["Filename1"]

这种方式避免了全局变量混乱,文件名较多时管理更清晰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 16:57:31