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
相关推荐
书源丶8 小时前
四十五、函数式接口与 Lambda 表达式
java·开发语言
2301_812539678 小时前
golang如何实现最小堆定时器_golang最小堆定时器实现总结
jvm·数据库·python
java1234_小锋8 小时前
Java进程突然挂了如何排查?
java·开发语言
lyc87808 小时前
【Qwen3.5-2B-Base】本地模型部署和验证联动千帆api
大数据·python
m0_690825828 小时前
检测三位随机数中重复数字的Python实现方法
jvm·数据库·python
谙弆悕博士8 小时前
GPT-5.5 Instant 免费开放背后的技术跃迁与战略阳谋
人工智能·python·gpt·chatgpt·学习方法·业界资讯
WL_Aurora8 小时前
备战蓝桥杯国赛【Day 6】
python·算法·蓝桥杯
阿正呀8 小时前
Redis如何处理数据持久化与主从切换的冲突_确保选主期间的数据安全落盘.txt
jvm·数据库·python
AI精钢8 小时前
把 Markdown 笔记变成可问答的知识图谱:本地 Graph RAG 工具 Kwipu 实测
人工智能·笔记·python·aigc·知识图谱
测绘第一深情8 小时前
在vscode中使用codex教程(个人安装经验)
数据结构·ide·vscode·python·算法·计算机视觉·编辑器