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
相关推荐
毕设源码-邱学长几秒前
【开题答辩全过程】以 基于Java的通信运营商流量管理系统设计与实现为例,包含答辩的问题和答案
java·开发语言
shangyingying_18 分钟前
图像质量评价(IQA)
人工智能·python·神经网络
OPEN-Source9 分钟前
大模型 Agent 实战:多 Agent 太贵太慢?一套系统性的性能与成本优化方案
人工智能·python·agent·rag·deepseek
一阵寒风10 分钟前
ComfyUI本地部署指南
开发语言·人工智能·python
高洁0117 分钟前
大模型架构演进:从Transformer到MoE
python·深度学习·机器学习·数据挖掘·知识图谱
谁不学习揍谁!19 分钟前
基于python机器学习算法的农作物产量可视化分析预测系统(完整系统源码+数据库+详细文档+论文+详细部署教程+答辩PPT)获取方式
python·算法·机器学习
麦德泽特22 分钟前
构建统一的机器人武器与伤害感应接口:I²C总线与PWM地址分配的巧妙结合
c语言·开发语言·机器人
wangluoqi25 分钟前
c++ 数据结构-树状数组、线段树 小总结
开发语言·数据结构·c++
我命由我1234525 分钟前
Java 开发 - 如何让一个类拥有两个父类
java·服务器·开发语言·后端·java-ee·intellij-idea·intellij idea
OPEN-Source25 分钟前
别为多 Agent 而多 Agent:一套实用的 Agent 架构选型指南
人工智能·python·agent·rag·deepseek