批量生成变量及引用_python 批量生成变量

笔记:python 批量生成变量

在编写程序时,有时我们需要命名相当多的变量,比如x0、x1、x2、…、xn,用手一个个打出来是相当麻烦的。那么这时我们就需要批量生成变量了。

解决这个问题的关键在于,'xn'是自动构造出来的字符串,需要利用适当途径,把它转化成能被赋值的变量。

方法一 :locals()

locals() 函数会以字典类型返回当前位置的全部局部变量。

for i in range(5):
    # 生成变量
    locals()['x'+str(i)]=['x',i,i+1]
    # 打印变量
    print( locals()['x'+str(i)] )

for i in range(5):
    # 生成变量
    locals()['x'+str(i)]=i**i
    # 打印变量
    print( locals()['x'+str(i)] )

4606a923c0c1f48f257056e57f366cf3.png

方法二 :exec()

exec()用于执行储存在字符串或文件中的 Python 语句。

for i in range(5):
    # 生成变量
    exec('x{}={}'.format(i,2*i+3))
    # 打印变量
    exec('print(x{})'.format(i))

for i in range(5):
    # 生成变量
    exec('x{}={}'.format(i,['x',i,i+1]))
    # 打印变量
    exec('print(x{})'.format(i))

8c6bfa17a44c1045abe6f361c8a8c318.png

方法三 :

字典的灵活使用

# 生成变量
temp = {}
for i in range(5):
    temp['x'+str(i)] = ['x',i,i**i]
# 打印变量
for i in range(5):
    print(temp['x'+str(i)])

# 生成变量
temp = {}
for i in range(5):
    temp['x'+str(i)] = i**i
# 打印变量
for i in range(5):
    print(temp['x'+str(i)])

dce736c45950b44f6dbaa80731943034.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值