我正在查看 Python TypeVar 的文档,但无法弄清楚第一个参数(或者可能是赋值变量)的含义。
从 3.8 文档:
A = TypeVar('A', str, bytes) # Must be str or bytes
def longest(x: A, y: A) -> A:
"""Return the longest of two strings."""
return x if len(x) >= len(y) else y
我的问题是,下面的 A 是什么意思?
A = TypeVar('A', str, bytes)
我见过的每个例子的变量名都与第一个参数相同。
本质上,是的,它必须是变量名。从PEP 484 https://www.python.org/dev/peps/pep-0484/#generics:
TypeVar() 的参数必须是等于变量名称的字符串
它被分配到的。不得重新定义类型变量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)