0
点赞
收藏
分享

微信扫一扫

重载类的特殊方法


1.在Python中,类中有一些以两条下划线开始并且以两条下划线结束的方法,称之为为的专有方法,专有方法时针对类的特殊操作的一些方法,

代码示例如下:

class Book:
def __init__(self,name="Python从入门到精通"):
self.name=name
def __add__(self, other):
return self.name+" "+other.name
def __len__(self):
return len(self.name)
if __name__=="__main__":
booka=Book()
bookb=Book("Java从入门到精通")
print("len(booka):",len(booka))
print("len(bookb):",len(bookb))
print(booka+bookb)

2.鸭子类型 与多态

class Duck:
def __init__(self,name="duck"):
self.name=name
def quack(self):
print("嘎嘎嘎")


class Cat:
   

def __init__(self,name="cat"):
self.name=name
def quack(self):
print("喵喵喵...")
class Tree:
def __init__(self,name="tree"):
self.name=name
def duck_demo(obj):
obj.quack()
if __name__=="__main__":
duck=Duck()
cat=Cat()
tree=Tree()
duck_demo(duck)
duck_demo(cat)
duck_demo(tree)

举报

相关推荐

0 条评论