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
相关推荐
APIshop1 分钟前
用“爬虫”思路做淘宝 API 接口测试:从申请 Key 到 Python 自动化脚本
爬虫·python·自动化
子午5 分钟前
【农作物谷物识别系统】Python+TensorFlow+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
Tony Bai5 分钟前
Go 2025云原生与可观测年度报告:底层性能革新与生态固防
开发语言·后端·云原生·golang
铅笔侠_小龙虾6 分钟前
Java 模拟实现 Vue
java·开发语言·vue.js
九天轩辕6 分钟前
基于 Qt 和 libimobiledevice 的跨平台 iOS 设备管理工具开发实践
开发语言·qt·ios
红蒲公英8 分钟前
( 教学 )Agent 构建 Prompt(提示词)3. StructuredOutputParser (结构化输出)
人工智能·python·prompt
程序喵大人8 分钟前
C++ MCP 服务器实现
开发语言·c++·项目·mcp服务器
谷粒.8 分钟前
API测试全解析:从基础到性能压测
java·运维·网络·人工智能·python·测试工具·自动化
小尧嵌入式9 分钟前
QT软件开发知识点流程及文本转语音工具
开发语言·c++·qt
月亮!9 分钟前
敏捷开发中测试左移的5个关键实践
java·人工智能·python·selenium·测试工具·测试用例·敏捷流程