目录
1.类型注解
1.变量的类型注解
2.函数(方法)的类型注解
3.union类型
2.多态
抽象类
1.类型注解
1.变量的类型注解
#基础数据类型注解
import random
v1 : int = 10
v2 : str = "aaa"
v3 : bool = True
#类对象类型注解
class student:
pass
stu : student = student()
#基础容器类型注解
mylist : list = [1,2,3]
mytuple : tuple = (1,2,3)
mydict : dict = {"abc" : 123}
#容器类型详细注解
mylist : list[int] = [1,2,3]
mytuple : tuple[int] = (1,2,3)
mydict : dict[str,int] = {"abc" : 123}
#在注释中进行类型注解
v4 = random.randint(1,10) # type: int
v5 = json.loads("{'name' : 'zhangsan'}") # type: dict
2.函数(方法)的类型注解
def func(x : int,y : int) -> int:
return x + y
a = 5
b = 10
print(func(a,b))
3.union类型
from typing import Union
mylist : list[Union[int,str]] = ["aaa",123]
def func(x : Union[str,int]) -> Union[str,int]
pass
func()
2.多态
class animal:
def speak(self):
pass
class dog(animal):
def speak(self):
print("汪汪汪")
class cat(animal):
def speak(self):
print("喵喵喵")
def makenoise(a):
a.speak()
cat = cat()
dog = dog()
makenoise(cat)
makenoise(dog)
抽象类
使用抽象类好比是使用一个顶层设计
比如要泡一杯茶,要先烧水,倒水入杯中,再加茶叶
不同的茶就是水可能不同,茶叶可能不同,烧制的水温不同等