简而言之:是否有一个用于'character'的Python类型提示,表示一个长度为1的str
,但未使用类型提示str
?
我最近看到chr
用于此目的,除了直觉之外,我找不到任何证据来证明或证明这是适当的。这显然是有效的Python语法。例如,
>>> def foo(c: chr):
... pass
...
>>> foo('a')
>>>
这提出了比答案更多的问题:chr
被认为是有效的类型提示,因为它是可调用的,并且所有类型都可由其构造函数“调用”?似乎没有-一些快速实验表明,Python实际上将接受任何定义的符号作为类型提示,而不管它是否有意义。