{site_name}

{site_name}

🌜 搜索

PythonGenericAlias对象是Python 3.7引入的一种新对象,

Python 𝄐 0
python中对象的特性,python特性和属性,python对象包括哪两大类,python对象的特征,python对象的属性和方法,python对象的三个特征
PythonGenericAlias对象是Python 3.7引入的一种新对象,它用于表示泛型类型注释(Generics Type Annotations),即参数化类型和类型变量。PythonGenericAlias对象具有两个特殊属性:

1. __origin__属性:获取泛型类型的原始类型。例如,List[int].__origin__将返回list。

2. __args__属性:获取泛型类型注释的参数列表。例如,List[int].__args__将返回(int,)。

下面是一个例子:

python
from typing import List

def foo(bar: List[int]) -> List[str]:
return [str(x) for x in bar]

print(foo([1, 2, 3])) # 输出 ['1', '2', '3']
print(List[int].__origin__) # 输出 <class 'list'>
print(List[int].__args__) # 输出 (<class 'int'>,)


在上面的例子中,我们定义了一个名为foo的函数,它接受一个整数列表bar作为参数,并返回一个字符串列表。参数bar被注释为List[int],即整数列表,返回值被注释为List[str],即字符串列表。我们还打印了List[int]的__origin__和__args__属性,其中__origin__返回list,__args__返回(int,),表示这是一个整数列表。