У меня есть модуль 'base.py':
class BaseA:
@property
def b(self):
''' returns a BaseB object '''
...
class BaseB:
pass
и child.py, который импортирует из этого модуля:
from base import BaseA, BaseB
class B(BaseB):
pass
class A(BaseA):
b: B
Поскольку точный тип возвращаемого значенияA.b
определено только в child.py, поэтому я поместил подсказку типа там, не назначая никакого значения.Есть ли какие-либо проблемы с этим, например, как-то «перезаписать» переменную?
Это прекрасно работает в Python 3.7, и PyCharm не помечает какую-либо ошибку, но я просто хочу быть уверен, потому что я только видел этонаоборот, переменная присваивается после объявления типа.