from typing import TypeVar, Generic
# 定义一个类型变量 T,它可以用任何类型来替代
T = TypeVar('T')
# 创建一个泛型类 Box,它有一个属性 value,类型为 T
class Box(Generic[T]):
def __init__(self, value: T) -> None:
self.value = value
def get_value(self) -> T:
return self.value
# 使用示例
box_int = Box(10) # T 是 int 类型
box_str = Box("hello") # T 是 str 类型
print(box_int.get_value()) # 输出: 10
print(box_str.get_value()) # 输出: hello
TypeVar
用于定义类型变量,这里的 T
可以被任何类型替代。Generic[T]
表示 Box
类是一个泛型类,可以接受任何类型的参数。Box
类的 value
属性类型为 T
,这意味着它可以存储任何类型的值。Box
类时,传入的值决定了 T
的具体类型。例如,Box(10)
中 T
是 int
,而 Box("hello")
中 T
是 str
。上一篇:python onnx
下一篇:python tolist
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站