Я хочу объявить тип переменной, которую я не объявляю сам, но о существовании которой я знаю.
Мотивация
Я в настоящее время работаю с библиотекой kivy, которая плохо справляется с указанием проверяющим статические типы типов ее полей. Я хотел бы сам указать типы, чтобы иметь возможность автодополнения. В приведенном ниже примере self.ids будет DictProperty (я считаю, что это подкласс dict), и я хочу объявить тип self.ids.task_list_area.
Постановка задачи
Как объявить тип self.ids.task_list_area в следующем коде? p>
class MyScreenManager(ScreenManager):
task_list = ["Do Homework", "Take out Trash"]
class DetailsScreen(Screen):
manager: MyScreenManager # this works
# ids: dict
# ids.task_list_area: BoxLayout # this does not work because ids does not exist
def display_tasks(self):
print(self.manager.task_list) # this is correctly infered as list[str]
# this works at runtime, but the type checker has no clue what is happening
print(self.ids.task_list_area)
def display_tasks_with_annotation(self):
self.ids.task_list_area: BoxLayout # this does not error, but does not work either
print(self.ids.task_list_area) # type checker still knows nothing
Подробнее здесь: https://stackoverflow.com/questions/792 ... d-variable
Как объявить тип атрибута необъявленной переменной ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Проверьте, если тип (a) == Тип (b) или тип (a) == Тип (b с удаленной константой) кратко
Anonymous » » в форуме C++ - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-