函数方法类型注解
# 函数方法类型注解
# 对形参的注解
def add(x: int, y: int):
return x + y
res = add(1, 2)
# 对函数返回值的注解
def func(data: list) -> list:
return data
# union联合类型注解:为了解决混合类型
from typing import Union
my_list: list[Union[int, str]] = [1, 2, "itcast"]
def fun(data: Union[int, str]) -> Union[int, str]: # 表示可传入字符串或整型,且返回类型也是
pass
多态
# 多态:完成某个行为,不同状态得到不同结果
class Animal:
def shut(self):
pass
class Dog(Animal):
def shut(self):
print("汪汪汪")
class Cat(Animal):
def shut(self):
print("喵喵喵")
def make_noise(animal: Animal):
animal.shut()
dog = Dog()
cat = Cat()
make_noise(dog)
make_noise(cat)
# 抽象类(接口): 这种设计的含义是,父类用于确定有哪些方法,具体的方法实现由子类决定
# 含有抽象方法的类是抽象类,方法体为空实现的称之为抽象方法