
笨办法学Python之将对象名的字符串类型,转化成相应对象
发布日期:2021-05-08 12:52:11
浏览次数:10
分类:精选文章
本文共 640 字,大约阅读时间需要 2 分钟。
在Python中,通过使用`eval()`函数可以轻松创建对象。以下是几种常用的实现方法:
方法一:
使用`eval()`直接创建对象。
```pythona = eval('obj()')```
需要注意的是,对象名的字符串形式需要使用括号形式(即`obj()`),而不是直接的类名字符串(如`obj`)。通过`eval()`函数可以动态地创建对象。
方法二:
预编译字符串为代码对象,以提高效率。
```pythoncreate_obj = compile('obj()', 'create_obj.py', 'eval')a = eval(create_obj)```
这种方法通过预先编译字符串到代码对象,避免了每次都重新编译,可以显著提升性能。
方法三:
将代码放置在模块的顶层,利用`getattr()`动态获取类。
```pythonmodule = __import__('module_name')AClass = getattr(module, 'ClassName')a = AClass() # 或 a = new.instance(AClass)```
这种方法适用于在模块内部动态导入和创建对象,能够自动触发类的初始化过程。
方法四:
使用`global()`函数直接获取全局对象。
```pythonexample = globals()['next']()```
这种方法通过直接访问全局变量,可以快速获取并创建指定对象,适用于已知对象名称的情况。
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年03月29日 22时01分34秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
c语言(基本数据类型)实参与形参传值 用汇编理解
2019-03-05
基于单片机可控音乐流水灯控制设计-全套资料
2019-03-05
基于单片机简易信号误差分析设计-全套资料
2019-03-05
基于单片机简易脉搏测量仪系统设计-毕设课设资料
2019-03-05
并发框架下的“基础类型”——浅析基本类型、ThreadLocal、原子类的线程安全机制
2019-03-05
VHDL代码风格
2019-03-05
图像处理系列1.skimage
2019-03-05
Object Clone
2019-03-05
Javascript中String支持使用正则表达式的四种方法
2019-03-05
2021年判断浏览器最新写法,你都掌握了吗?
2019-03-05
【IoT】蓝牙BLE基础:CC254x通信系列之模拟SPI协议
2019-03-05
【IoT】TI BLE CC2541 串口控制蓝牙详解
2019-03-05
【产品】项目管理的五个过程和九大知识领域之二
2019-03-05
【项目管理】项目管理流程浅析
2019-03-05
【Tool】如何使用 Uniflash 烧写 WIFI 芯片 CC3200
2019-03-05
copy_{to, from}_user()的思考
2019-03-05
Web前端安全策略之CSRF的攻击与防御
2019-03-05
纯客户端页面关键字搜索高亮jQuery插件
2019-03-05
linux运维中常用的命令
2019-03-05
M1芯片的macbook安装王者荣耀,原神,崩坏方法
2019-03-05