不确定类型提示实例变量的Python约定 - 我一直在__init__构造函数参数中执行它们,如下所示:
class LoggedVar(Generic[T]):
def __init__(self, value: T, name: str, logger: Logger) -> None:
self.name = name
self.logger = logger
self.value = value`
Run Code Online (Sandbox Code Playgroud)
链接到上面的代码段:https://docs.python.org/3/library/typing.html#user-defined-generic-types
但我也看到PEP约定注释实例变量(下面的代码段),然后在__init__参数中进行类型提示:
class BasicStarship:
captain: str = 'Picard' # instance variable with default
damage: int # instance variable without default
stats: ClassVar[Dict[str, int]] = {} # class variable`
def __init__(self, damage: int, captain: str = None):
self.damage = damage
if captain:
self.captain = captain # Else keep the default …Run Code Online (Sandbox Code Playgroud) python conventions instance-variables type-hinting python-3.x