📅  最后修改于: 2023-12-03 15:22:04.967000             🧑  作者: Mango
Python 3.5 引入了类型提示(Type Hints)这个新特性,可以标注代码中变量、函数参数以及函数返回值的类型。Python 的类型提示语法使用 ->
进行类型注解表示。
a: int = 1
b: str = 'hello'
c: list = [1, 2, 3]
def add(a: int, b: int) -> int:
return a + b
result = add(1, 2)
注:类型提示只是建议,Python 解释器依然会接受任何类型的实参。
def say_hello(name: str) -> str:
return f'Hello, {name}!'
greeting = say_hello('world')
注:类型提示同样只是建议,函数的实际返回值类型可能与提示可能并不一致。
自定义类型提示需要通过类型别名实现。
# 定义类型别名
from typing import List, Dict
UserId = str
UserList = List[UserId]
UserDict = Dict[UserId, str]
# 使用类型别名
def get_user_names(users: UserList, user_info: UserDict) -> List[str]:
user_names = [user_info[user_id] for user_id in users]
return user_names
泛型类型提示用于表示参数或返回值是可变类型。
# 表示返回值是列表,列表元素为任意类型
from typing import List, TypeVar
T = TypeVar('T')
def make_list(item: T) -> List[T]:
return [item]
str_list = make_list('hello')
num_list = make_list(1)
以上是 Python 中类型提示的用法,通过类型提示提高代码的可读性和可维护性,尤其在项目开发大型代码时更为重要。