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

Python for循环遍历dataframe时如何打印变量名而非变量内容

解决方案

Python中对象本身不会存储绑定的变量名,所以直接遍历DataFrame对象无法直接获取对应的变量名,两种简便实现方法如下:

方法1:手动指定变量名列表(最稳妥,无额外匹配逻辑)

只需要列出变量名的字符串列表,通过globals()从全局作用域获取对应DataFrame对象即可,不需要手动写完整的字典映射:

for df_name in ["df_1", "df_2", "df_3", "df_4"]:
    # 获取对应变量名的DataFrame
    df = globals()[df_name]
    # 执行自定义操作
    df.RandomField.value_counts()
    # 直接输出变量名
    print(df_name)

方法2:自动匹配符合命名规则的DataFrame(适合批量处理场景)

如果你的DataFrame都遵循统一的命名规则(比如前缀为df_),可以直接从全局变量中自动过滤符合要求的DataFrame,连变量名列表都不需要手动写:

import pandas as pd

# 自动过滤所有符合df_数字命名格式的DataFrame
df_name_list = [
    var_name for var_name, var_value in globals().items()
    if var_name.startswith("df_")
    and var_name.split("_")[-1].isdigit()
    and isinstance(var_value, pd.DataFrame)
]

for df_name in df_name_list:
    df = globals()[df_name]
    df.RandomField.value_counts()
    print(df_name)

以上两种方法均兼容Python 3.8和Jupyter Notebook环境,无需安装额外依赖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 23:42:03