这篇文章主要介绍了Python动态声明变量赋值代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
通过exec()、globals()和locals()
# 通过exec() for i in range(1,4): # 第一次循环 i=1 时,会执行字符串中的python语句 ex1 = "exec1",以此类推 exec(f'ex{i} = "exec{i}"') # 通过globals()和locals() def test(): # globals() for i in range(1,4): # 第一次循环 i=1 时,执行 globals()['gb1'] = 'global1',globals()是一个dict globals()[f'gb{i}'] = f'global{i}' # locals() for i in range(1,4): locals()[f'lc{i}'] = f'local{i}' # 尝试打印locals的变量 try: print(lc1,lc2,lc3) # 会报错 except Exception as e: print(e) print(locals()['lc1'],locals()['lc2'],locals()['lc3']) # 通过键值对 if __name__ == '__main__': # 执行 test() print('---------------------') # 打印函数定义的全局变量 print(gb1,gb2,gb3) print('---------------------') # 打印通过exec()定义的变量 print(ex1,ex2,ex3)
输出结果:
name 'lc1' is not defined local1 local2 local3 --------------------- global1 global2 global3 --------------------- exec1 exec2 exec3原文链接:https://www.f2er.com/python/535087.html