PEP 484(Python Enhancement Proposal 484)是关于 Python 类型提示(Type Hints)的提案。类型提示是 Python 3.5 引入的特性,它们是代码中声明变量、函数参数和返回值类型的方式。类型提示为静态类型检查、自动完成、代码分析和文档生成等工具提供了支持。
PEP 484 内容
PEP 484 主要讨论了类型提示的语法、语义和类型系统的扩展。它详细介绍了类型注解的语法,以及如何使用类型提示来表示函数参数、返回值、变量、类和模块的类型。类型提示的语法包括:
- 类型注解:使用类型提示语法(如
:type:
)在代码中明确声明类型的方式。它们可以用于变量、函数参数和返回值、类定义等。 - 基本类型:Python 内置了一些基本类型,如
int
,float
,str
,list
,dict
等。类型提示允许我们为这些类型提供描述性的名字。 - 自定义类型:我们可以定义自定义类型,如类、元组、字典等。类型提示允许我们为这些自定义类型提供描述性的名字。
- 类型别名:我们可以为常用的类型定义别名,以简化代码。例如,
Optional
是一个表示可能为None
的值的类型。
Code案例
下面是一个使用类型提示的简单 Python 代码示例:
from typing import List
def greet(names: List[str]) -> str:
return "Hello, " + " and ".join(names)
# 使用类型提示
names = ["Alice", "Bob", "Charlie"]
greeting = greet(names)
print(greeting) # 输出: Hello, Alice and Bob and Charlie
在这个例子中,我们定义了一个函数 greet
,它接受一个字符串列表作为参数,并返回一个字符串。我们使用了类型提示 List[str]
来指定参数 names
的类型。这样,Python 类型检查器(如 mypy
)就可以帮助我们检测潜在的类型错误。
希望这个解释能帮助你更好地理解 PEP 484 和类型提示。