这篇文章将为大家详细讲解有关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
关于Python中怎么动态声明变量赋值就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。