python面向对象之多态

多态

多态: 仅针对方法,方法灵活性的抽象

  1. 参数类型的多态:一个方法能够处理多个类型的能力
  2. 参数形式的多态:一个方法能够接受多个参数的能力
  3. 多态是OOP的一个传统概念,python天然支持多态,不需要特殊的语法
class DemoClass:
	def __init__(self,name):
		self.name=name
	def __id__(self):
		return len(self.name)
	def lucky(self,salt):
		s=0
		for c in self.name:
			s+=(ord(c)+id(salt))%100
		return s
dc1=DemoClass("老王")
dc2=DemoClass("老李")
print(dc1.lucky(10))
print(dc1.lucky("10"))
print(dc1.lucky(dc2))
输出:
68
52
96
class DemoClass:
	def __init__(self,name):
		self.name=name
	def __id__(self):
		return len(self.name)
	def lucky(self,salt=0,more=9):
		s=0
		for c in self.name:
			s+=(ord(c)+id(salt)+more)%100
		return s
dc1=DemoClass("老王")
print(dc1.lucky())
print(dc1.lucky(10))
print(dc1.lucky(10,100))
输出:
46
86
68

你可能感兴趣的:(python,多态,python,机器学习,人工智能,深度学习)