Toa*_*ter 5 python python-3.x python-typing
我正在查看PEP 484,但找不到有关如何键入提示类引用的说明。类引用是否声明为 Callables,如下所示?
from typing import Callable
class SomeClass:
def __init__(self):
self.s = 'Hello'
def display(self):
print(self.s)
x: Callable[[], SomeClass] = SomeClass
instance = x()
instance.display()
Run Code Online (Sandbox Code Playgroud)
谢谢!
如果您只关心它x是一个类,则只需使用type(或其他一些适当的元类)。
x: type = SomeClass
Run Code Online (Sandbox Code Playgroud)
如果x应该是SomeClass或其后代之一,请使用typing.Type
x: typing.Type[SomeClass] = SomeClass
Run Code Online (Sandbox Code Playgroud)
如果x必须完全正确 SomeClass(无论出于何种原因),我认为typing.TypeVar是合适的选择。
x: typing.TypeVar('SomeClass', SomeClass) = SomeClass
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
292 次 |
| 最近记录: |