Python泛型使用typing模块TypeVar和Generic实现
from typing import TypeVar, Generic
# 定义一个泛型T
T = TypeVar('T')
# 定义一个泛型数据容器类MyContainer
class MyContainer(Generic[T]):
def __init__(self, value: T):
self._value = value
@property
def value(self) -> T:
return self._value
# 使用MyContainer
int_container = MyContainer[int](10)rint(int_container.value) # 输出: 10
str_container = MyContainer[str]("Hello")
print(str_container.value) # 输出: Hello
这段代码定义了一个泛型类MyContainer
,它可以持有任何类型的数据。通过使用TypeVar
定义了一个泛型类型T
,然后在MyContainer
类中用作属性的类型注解。这样,我们可以创建MyContainer
实例来持有整数、字符串或其他任何类型的数据。这是Python中使用泛型的一个基本示例。
评论已关闭