python中的魔法方法
2023-12-16 07:37:58
class A:
def __new__(cls):
print("__new__")
return super().__new__(cls)
def __init__(self):
print("__init__")
o = A()
? ? ? ? new和init这两个比较容易搞混,他们的主要区别就是:new是一个class建立object的过程,init是有了这个object之后给object初始化的过程,new是有返回值的,init是没有返回值的。如果我们在创建object的过程中传入了一些参数,这些参数既会传入的new中也会传入到init中,在实际应用中new函数用的比较少(一般只有单例的情况修下才用new)。
class date:
def __init__(self, year, month, date):
self.year = year
self.month = month
self,date = date
def __eq__(self,other):
return(self.year == other.year and
self.month == other.month and
self.date == other.date)
x = date(2023,12,11)
y = date(2023,12,11)
print(x == y)
????????python中的运算符重载,当我们想要比较两个自己定义的class时,需要对运算符进行重载。
文章来源:https://blog.csdn.net/m0_54146002/article/details/134919934
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!