用法:
typing.TYPE_CHECKING
第 3 方靜態類型檢查器假定為
True
的特殊常量。它在運行時是False
。用法:if TYPE_CHECKING: import expensive_mod def fun(arg: 'expensive_mod.SomeType') -> None: local_var: expensive_mod.AnotherType = other_fun()
第一個類型注釋必須用引號引起來,使其成為“forward reference”,以對解釋器運行時隱藏
expensive_mod
引用。不評估局部變量的類型注釋,因此第二個注釋不需要用引號引起來。注意
如果
from __future__ import annotations
在 Python 3.7 或更高版本中使用,注釋不會在函數定義時進行評估。相反,它們作為字符串存儲在__annotations__
, 這使得不需要在注釋周圍使用引號。 (看 PEP 563)。版本 3.5.2 中的新函數。
相關用法
- Python typing.TypedDict.__optional_keys__用法及代碼示例
- Python typing.TypedDict.__total__用法及代碼示例
- Python typing.TypeVar用法及代碼示例
- Python typing.TypedDict用法及代碼示例
- Python typing.TypeGuard用法及代碼示例
- Python typing.Type用法及代碼示例
- Python typing.TypeAlias用法及代碼示例
- Python typing.get_type_hints用法及代碼示例
- Python typing.Concatenate用法及代碼示例
- Python typing.Optional用法及代碼示例
- Python typing.Final用法及代碼示例
- Python typing.Protocol用法及代碼示例
- Python typing.NoReturn用法及代碼示例
- Python typing.is_typeddict用法及代碼示例
- Python typing.AsyncGenerator用法及代碼示例
- Python typing.final用法及代碼示例
- Python typing.ClassVar用法及代碼示例
- Python typing.ParamSpec用法及代碼示例
- Python typing.Literal用法及代碼示例
- Python typing.overload用法及代碼示例
注:本文由純淨天空篩選整理自python.org大神的英文原創作品 typing.TYPE_CHECKING。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。