Python 官方文档:入门教程 => 点击学习
python中的泛型并不是强类型,因此无法直接获取传入的类型。 Python的类型注解主要是用来提供静态类型检查的,而在运行时并没有
python中的泛型并不是强类型,因此无法直接获取传入的类型。 Python的类型注解主要是用来提供静态类型检查的,而在运行时并没有真正的类型信息。
但是,你可以使用`typing`模块中的`Type`和`TypeVar`来实现类型参数的传递和获取。`TypeVar`用于定义泛型类型参数,`Type`用于获取实际类型。
下面是一个示例:
from typing import Type, TypeVar
T = TypeVar('T')
def get_type(obj: T) -> Type[T]:
return type(obj)
# 传入不同类型的参数
print(get_type("Hello")) #
print(get_type(10)) #
print(get_type([1, 2, 3])) #
在上面的示例中,`get_type()`函数接受一个泛型类型参数`T`,并使用`type()`函数获取传入参数`obj`的实际类型。然后返回实际类型`Type[T]`。
需要注意的是,`typing`模块中的`Type`和`TypeVar`主要用于静态类型检查,运行时并没有真正的类型信息。因此,`Type`只能获取到实际类型的基本信息,如`
--结束END--
本文标题: python泛型如何获取传入的类型
本文链接: https://lsjlt.com/news/482225.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0