Python使用__new__()方法为对象分配内存及返回对象的引用示例

yipeiwu_com6年前Python基础

本文实例讲述了Python使用__new__()方法为对象分配内存及返回对象的引用。分享给大家供大家参考,具体如下:

demo.py(__new__方法):

class MusicPlayer(object):
  # 为对象分配内存空间
  def __new__(cls, *args, **kwargs):
    # 1. 创建对象时,new方法会被自动调用
    print("创建对象,分配内存空间")
    # 2. 为对象分配空间
    instance = super().__new__(cls)
    # 3. 返回对象的引用
    return instance
  # 对象初始化,定义实例属性
  def __init__(self):
    print("播放器初始化")
# 创建播放器对象
player = MusicPlayer()
print(player)

运行结果:

创建对象,分配内存空间
播放器初始化
<__main__.MusicPlayer object at 0x017A41D0>

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

python中的逆序遍历实例

如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列。 range()语法: range(start,end,step=1):顾头不顾尾 正序遍历: range(10):...

python xlsxwriter库生成图表的应用示例

python xlsxwriter库生成图表的应用示例

xlsxwriter可能用过的人并不是很多,不过使用后就会感觉,他的功能让你叹服,除了可以按要求生成你所需要的excel外 还可以加上很形象的各种图,比如柱状图、饼图、折线图等。 xls...

Python内置函数delattr的具体用法

delattr 函数用于删除属性。 delattr(x, 'foobar') 相等于 del x.foobar。 语法 setattr 语法:delattr(object, nam...

对python创建及引用动态变量名的示例讲解

实际上在python中用列表就可以实现动态变量名的管理,python中的列表中可以存储任何类型的元素: listA = [0,"str",B()] 上述列表分别存储了整数,字符串...

如何通过雪花算法用Python实现一个简单的发号器

如何通过雪花算法用Python实现一个简单的发号器

实现一个简单的发号器 根据snowflake算法的原理实现一个简单的发号器,产生不重复、自增的id。 1.snowflake算法的简单描述 这里的snowflake算法是用二进制的...