Python创建对象的七种方式
Python语言提供了多种创建对象的方式,这里列出其中方式,比如下面有一个类:
class Bar:
def __init__(self,x):
print(x)
self.x=x
方式一:
传统方式构建,将类对象当成构造器使用
b1=Bar(4)
方式二:
把类名当成参数,使用eval()函数
b2=eval("Bar(1)")
方式三:
使用getattr函数
import sys
b3=getattr(sys.modules[__name__],"Bar")(3)
方式四:
使用globals函数
b4=globals()["Bar"](5)
方式五:
使用自定义函数创建对象
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def make_object(cls,*args,**kwargs):
return cls(*args,**kwargs)
b5=make_object(Bar,10)
方式六:
原型方式创建
b6=copy.deepcopy(b5)
b6.x=9
方式七:
使用__class__
创建,使用新参数创建对象
b7=b1.__class__(11) #__class__查看对象所在的类b1.__class_查看b1的类就是Bar
本文来自博客园,作者:I'm_江河湖海,转载请注明原文链接:https://www.cnblogs.com/jhhh/p/16760857.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构