Python中怎么动态声明变量赋值

这篇文章将为大家详细讲解有关Python中怎么动态声明变量赋值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

通过exec()、globals()和locals()

Python中怎么动态声明变量赋值

#通过exec()
foriinrange(1,4):
#第一次循环i=1时,会执行字符串中的python语句ex1="exec1",以此类推
exec(f'ex{i}="exec{i}"')

#通过globals()和locals()
deftest():
#globals()
foriinrange(1,4):
#第一次循环i=1时,执行globals()['gb1']='global1',globals()是一个dict
globals()[f'gb{i}']=f'global{i}'

#locals()
foriinrange(1,4):
locals()[f'lc{i}']=f'local{i}'

#尝试打印locals的变量
try:
print(lc1,lc2,lc3)#会报错
exceptExceptionase:
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'isnotdefined
local1local2local3
---------------------
global1global2global3
---------------------
exec1exec2exec3

关于Python中怎么动态声明变量赋值就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

发布于 2021-07-29 22:00:07
收藏
分享
海报
0 条评论
200
上一篇:python中变量的存储原理是什么 下一篇:React中如何使用native全局变量
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码