Ошибка типа в await asyncio.sleep (объект 'dict' не вызывается) - PullRequest
0 голосов
/ 21 января 2019

Я недавно начал использовать python и получил следующий журнал ошибок на моем aiohttp сервере:

ERROR:app.handlers.socket_handler:'dict' object is not callable
Traceback (most recent call last):
  File "[...]/app/handlers/socket_handler.py", line 47, in try_coroutine
    await coroutine
  File "[...]/app/handlers/socket_handler.py", line 65, in do_stuff
    async for data in stuff_repo.observe_stuff(search=param_search):
  File "[...]/app/repositories/stuff_repository.py", line 74, in observe_stuff
    await asyncio.sleep(sleep_for)
TypeError: 'dict' object is not callable

Это не имеет никакого смысла для меня, поскольку ни в одной точке нет dict объектов или callable s, участвующих в вызове asyncio.sleep, а sleep_for представляет собой целое число со значением 30, которое не имеет смысла изменено, только чтение:

Что может быть не так с кодом?

1 Ответ

0 голосов
/ 21 января 2019

Это ошибка PyCharm, так как она возникает только при добавлении точки останова во время уже отладки.

Исправление: добавление переменной среды PYDEVD_USE_FRAME_EVAL=NO

Источники:

Отладка асинхронного кода в PyCharm вызывает абсолютно безумные неповторимые ошибки

https://youtrack.jetbrains.com/issue/PY-25856

...