Я использую поддержку Python для вложенных классов для группировки и организации определений классов. Некоторые из этих внутренних классов являются чистыми классами данных, и я извлекаю пользу из стандартного сокращения @dataclass (__init__
, __repr__
et c).
К сожалению, когда я пытаюсь создать экземпляр внутренний класс PyCharm не может правильно интерпретировать тип аргументов и помещает wiggl ie (волнистая строка, указывающая, как правило, плохой код) под первым аргументом. Обратите внимание:
- Код работает нормально, это просто проблема с подсказкой типов.
@dataclass
в классе уровня модуля такой проблемы не возникает. - Удаление
@dataclass
и ручная вставка шаблона для __init__
Вот скриншот кода с предупреждением PyCharm: