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

如何利用for循环索引i作为后缀创建DataFrame命名

如何在循环中根据索引动态命名DataFrame

你尝试直接用df_{i}这种方式动态命名DataFrame会触发语法错误,因为Python不允许在赋值语句的左侧直接使用f-string动态生成变量名。下面是两种可行的解决方法:

推荐方法:使用字典存储(最佳实践)

用字典集中管理所有动态生成的DataFrame,既规范又便于后续操作:

import pandas as pd
import numpy as np

# 创建空字典用于存储所有DataFrame
dfs = {}
for i in ['US','JP','DE','UK','CN']:
    # 以"df_国家代码"为键,存入对应的空DataFrame
    dfs[f'df_{i}'] = pd.DataFrame()

# 访问示例:获取美国对应的DataFrame
print(dfs['df_US'])

这种方式避免了污染全局命名空间,后续查找、遍历或修改这些DataFrame都更高效。

可选方法:动态创建全局变量(不推荐)

如果确实需要生成独立的全局变量,可以通过修改globals()字典实现:

import pandas as pd
import numpy as np

for i in ['US','JP','DE','UK','CN']:
    # 动态生成变量名并创建DataFrame
    globals()[f'df_{i}'] = pd.DataFrame()

# 直接访问生成的变量
print(df_US)

⚠️ 注意:这种方式会让变量分散在全局命名空间中,代码可读性和可维护性变差,容易引发命名冲突,因此不建议在正式代码中使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 04:09:57