Mypy не учитывает условие ifPython

Программы на Python
Anonymous
Mypy не учитывает условие if

Сообщение Anonymous »

У меня есть словарь разных типов, и в моем коде при чтении словаря через цикл в зависимости от его типа выполняются разные операции. Код работает как положено, но MYPY жалуется, что он неверен. Вот пример кода:

Код: Выделить всё

COL = {
"ABC": [
"col1",
"col2",
"col3",
],
"BBC": [
"col1",
"col2",
"col3",
],
"XYZ": {
"col1": "c1",
"col2": "c2",
"col3": "c3",
},
}
for table_name in COL:
list(COL[table_name].keys()) if
isinstance(COL[table_name], dict) else
COL[table_name]
Mypy сообщает об ошибке: ошибка: «Коллекция[str]» не имеет «значений» атрибута
Похоже, что условие if не было выполнено принять во внимание.
Попробовал аннотации типов для COL, но не помогло.

Подробнее здесь: https://stackoverflow.com/questions/783 ... -condition

Вернуться в «Python»