Python类型注解


python3.5以上才有这个功能。

def greeting(name:str) -> str: #指定namestr类型,返回值为str

return 'hello' + nam

好处:

可读性强;

方便调用相关类型方法;

方便静态代码检查;

类型别名

#为类型起别名
Vector = List[float]

def scale(scalar:float,vector:Vector)->Vector:
return [scalar * num for num in vector]

print(scale(1.1,[1,2,-4.4,6.5]))

自定义类型

创建一个类,并将一个方法的返回值指定为该类

class Student:
name:str
age:int
name = 'Tom'
# def __init__(self,name):
# self.name = name
def get_name(self):
print(self.name)

def get_stu(name:str)-> Student:
return Student()

get_stu('ha').get_name()

静态代码检查

添加mypy这个库,并使用命令:mypy xx.py来检查代码语法和类型错误