Python函数注解是为开发者和工具提供类型信息的语法,不改变运行行为;基础写法为参数后加冒号类型、函数后加箭头返回类型;支持Optional、联合类型、泛型容器、自定义别名与TypedDict;建议新函数优先添加、API函数必须完整标注,并配合mypy和IDE进行静态检查。

Python函数注解(即类型提示)不是装饰器,也不是运行时强制检查的语法,而是为开发者和工具(如IDE、mypy、pyright)提供可读、可校验的类型信息。写得清楚,能显著提升代码可维护性、减少参数误用,还能让自动补全更准。
在函数定义中,参数名后加冒号 + 类型,函数括号后加箭头 + 返回类型:
def greet(name: str, age: int) -> str:
return f"Hello {name}, you are {age} years old"
除了 int、str、bool、float 等基础类型,还需掌握这些高频写法:
Optional[str] 或简写 str | None(Python 3.10+)int | str 表示“可以是整数或字符串”list[int]、dict[str, float](注意大小写,需从 typing 导入或使用内置泛型,Python 3.9+ 支持内置)*args: tuple[int, ...] 表示任意多个整数;**kwargs: dict[str, Any] 需导入 Any
避免重复写冗长类型,也便于统一修改:
立即学习“Python免费学习笔记(深入)”;
from typing import Dict, List, TypedDict
UserId = int
UserName = str
UserRecord = Dict[UserId, UserName]
class User(TypedDict):
id: int
name: str
active: bool
def get_users() -> List[User]:
...
UserId 是类型别名,提升可读性,也方便后续改成 str(如 UUID)时批量替换TypedDict 适合结构固定、字段明确的字典,支持 IDE 精准提示字段名dict 或 list 这类裸类型——它们不带元素类型信息,工具无法校验mypy 做静态检查:安装后运行 mypy your_script.py,它会指出类型不匹配处以上就是Python函数注解怎么写_类型提示实战解析【教程】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号