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

如何在Python循环中基于列表项创建动态命名对象?

解决方案

推荐方案:用字典存储(更安全规范)

用字典来管理这些动态生成的对象是更合理的选择,既满足需求,又能避免变量名冲突、方便后续统一操作:

my_lst = ['cat', 'dog', 'rat']
tbl_dict = {}

for var in my_lst:
    tbl_dict[f'tbl_{var}'] = my_function(var)

# 调用对象时通过字典键获取
print(tbl_dict['tbl_cat'])

可选方案:动态创建变量(不推荐)

如果一定要生成独立的变量名,可以通过操作全局命名空间实现,但这种方式会让代码可读性变差,排查问题难度提升,不建议在正式代码中使用:

my_lst = ['cat', 'dog', 'rat']

for var in my_lst:
    var_name = f'tbl_{var}'
    globals()[var_name] = my_function(var)

# 之后可直接使用tbl_cat、tbl_dog等变量
print(tbl_cat)

注:locals()在函数内部等场景下可能无法生效,而globals()会修改全局命名空间,滥用易引发意外问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 13:29:52