本文共 1142 字,大约阅读时间需要 3 分钟。
Python 3.5版本引入了类型注解功能,主要为静态类型检查工具和IDE提供支持。类型注解通过在代码中显式声明数据类型,帮助开发者和工具对变量、函数参数及返回值进行类型推断和代码提示。
类型注解的主要作用包括:
变量的类型注解可以是基础数据类型或自定义类对象。以下是几种常见类型注解示例:
基础数据类型注解
var_1: int = 10var_2: str = "handsome"var_3: bool = True
类对象类型注解
class Student: passstu: Student = Student()
容器类型注解
my_list: list = [1, 2, 3]my_tuple: tuple = (1, 2, 3)my_dict: dict = {"handsome": 666} 容器类型详细注解
my_list: list[int] = [1, 2, 3]my_tuple: tuple[int, str, bool] = (1, "handsome", True)my_dict: dict[str, int] = {"handsome": 666} 注:元组类型注解需逐项标注,字典类型注解需按键值顺序标注。
var_1 = random.randint(1, 10) # type: intvar_2 = json.loads('{"name": "zhangsan"}') # type: dict[str, str]def func(): return 10var_3 = func() # type: int 函数和方法的参数及返回值可以进行类型注解。
参数注解
def add(x: int, y: int) -> int: return x + y
返回值注解
def func(data: list) -> list: return data
Union类型用于表示多种类型的联合,适用于不确定类型的场景。
导包
from typing import Union
使用示例
my_list: list[Union[int, str]] = [1, 2, "handsome", "god"]def func(data: Union[int, str]) -> Union[int, str]: pass
Union类型在变量注解、函数参数和返回值注解中均可使用。
转载地址:http://oaofk.baihongyu.com/