Python 动态变量名定义与调用方法

一、使用 exec 动态赋值

exec 在 python3 中是内置函数,它支持 python 代码的动态执行。

复制代码
In [1]: for i in range(5):
  ...:   exec('var{} = {}'.format(i, i))
  ...:
 
In [2]: print(var0, var1, var2, var3 ,var4)
0 1 2 3 4

二、利用命名空间动态赋值

在Python的命名空间中,将变量名与值存储在字典中,

可以通过locals(),globals()函数分别获取局部命名空间和全局命名空间。

复制代码
>>> names = locals()
>>> for i in range(5):
...   names['n' + str(i) ] = i
...
>>> print(n0, n1, n2, n3, n4)
0 1 2 3 4
>>>

三、在类中使用动态变量

Python 的类对象的属性储存在的 dict 中。dict 是一个词典,键为属性名,值对应属性的值。

复制代码
>>> print(n0, n1, n2, n3, n4)
0 1 2 3 4
>>> class Test_class(object):
...   def __init__(self):
...     names
相关推荐
bugcome_com2 分钟前
C# 高级集合使用示例
开发语言·c#
sycmancia6 分钟前
C++——动态内存分配、关于虚函数、关于继承中的强制类型转换
开发语言·c++
龙泉寺天下行走7 分钟前
LangChain Skills框架核心解析
python·langchain·aigc
Mao_Hui8 分钟前
Unity3d实时读取Modbus RTU数据
开发语言·嵌入式硬件·unity·c#
echome8888 分钟前
Python 装饰器详解:从入门到精通的实用指南
开发语言·python
重生之后端学习14 分钟前
62. 不同路径
开发语言·数据结构·算法·leetcode·职场和发展·深度优先
tang7778914 分钟前
爬虫代理IP池到底有啥用?
网络·爬虫·python·网络协议·tcp/ip·ip
sg_knight17 分钟前
设计模式实战:享元模式(Flyweight)
python·设计模式·享元模式·flyweight
墨有66619 分钟前
基于弦论流体对偶与环空间约化的湍流精确数值模型
python·流体力学·弦理论
栗子~~25 分钟前
hardhat 单元测试时如何观察gas消耗情况
开发语言·单元测试·区块链·智能合约