Python中如何引用名称含其他变量值的已创建变量?
解决方案
你可以直接用Python内置的globals()或locals()函数实现需求,这两个函数会返回当前作用域的变量字典,只需拼接出目标变量名,再通过字典键值对的方式取值即可,完全不需要遍历所有环境变量。
示例代码
先模拟他人创建的变量,再通过循环获取:
# 模拟已存在的变量 variable0 = "变量0的内容" variable1 = "变量1的内容" variable2 = "变量2的内容" # ... 直到variable9 # 循环获取并打印目标变量 for i in range(0,10): target_var_name = f"variable{i}" # 全局变量用globals(),局部作用域(比如函数内)用locals() print(globals()[target_var_name])
注意点
- 变量在全局作用域时用
globals(),在局部作用域(比如函数内部定义的变量)时用locals(); - 这种方式是直接通过字典键查找,效率远高于遍历所有变量。
内容的提问来源于stack exchange,提问作者Lukas Taylor
相关产品推荐
相关产品推荐

