常量转化为变量(如何动态生成变量名)

常量转化为变量(如何动态生成变量名)

问题描述

已知 lists=[‘A’, ‘B’, ‘C’, ‘D’],如何直接得到以字符串常量命名的变量–列表A,B,C,D ?

想法来源

最开始是在想如何批量创建新的空列表,并且自动命名!!
给变量命名实在是一件头疼事。。。

想法实现

在交流群里提问后,得到成功的答复
Python进阶:如何将字符串常量转为变量?
解决方案:

利用python内置函数exec()

lists = ['A', 'B', 'C', 'D']
for i in lists:
    exec(i + ' = []')
    #exec('{} = []'.format(i))
    #exec(''.join(i, '= []')) False #join([**]) ;join() 连接的是列表中的所有元素
    #exec(''.join([i, '= []']))
print(A, B, C, D)

#后是不同的字符串拼接方法 详见详解Python拼接字符串的七种方式
最后一种不太熟悉,join()函数拼接的是列表中的元素

利用globals()构造成字典中的key

在这里插入图片描述

知识点

literal 字面量,用于表达源代码中的固定值,如整数,浮点数,字符串等
动态执行代码~

遇到的新问题

如果字符串是中文,可以作为变量使用吗??

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值