Баги
Странный ImportError, хотя файл есть
Иногда Pybricks Code может показать ошибку вида:
ImportError: no module named 'xAct_action'
При этом файл xAct_action.py действительно есть в проекте, и импорт написан правильно:
from xAct_action import Action
Само имя xAct_action.py ошибку не вызывает. Главное, чтобы имя файла и имя в import совпадали.
Частая причина
Проблему может вызвать случайная кириллица в коде, например русские буквы, которые попали в файл при случайном переключении раскладки:
from xAct_action import Action
лол
robot = Robot()
Для обычного Python строка лол выглядит как имя переменной. Но старые версии Pybricks Code могут сломаться еще раньше: редактор пытается найти все import, чтобы загрузить нужные .py файлы на хаб. Если анализатор кода спотыкается о кириллицу, он может не добавить импортируемый файл в запуск.
В итоге настоящая проблема находится в main.py, а сообщение выглядит так, будто пропал модуль.
Что проверить
- Удали случайные русские буквы или другие строки, которые не являются кодом или комментарием.
- Проверь, что имя файла точно совпадает с импортом:
from xAct_action import Action
значит рядом должен быть файл:
xAct_action.py
Как должно быть
from xAct_action import Action
robot = Robot()
Если после удаления случайной кириллицы ошибка изменилась на NameError, SyntaxError или другую нормальную ошибку Python, значит импорт уже нашелся, и можно чинить реальную проблему в коде.