Я использую python3 -m pytest
для запуска моих тестов. Это работало, когда python3 указывало на python3 .6. Я установил python3 .7, сделал python3 .7 по умолчанию python3 с этими командами:
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2
sudo update-alternatives --config python3
и снова установил все необходимые пакеты для python3 .7. Но теперь я больше не могу проводить свои тесты. Потому что там написано: /usr/bin/python3: No module named pytest
. Я не использую виртуальный env, и проблема не в специфическом модуле c, потому что он не может найти другие модули. Это должно быть связано с python путями. Я не знаю, что изменить после переключения между python3 версиями, чтобы можно было легко найти необходимые модули в /home/ubuntu/.local/lib/python3.x/site-packages/
.
Я переключился обратно на python3 .6 и получил ModuleNotFoundError: No module named 'jsonpath_ng'
сейчас, который работал до переключения на python3 .7. Это вывод python3 -m site
:
sys.path = [
'/home/ubuntu',
'/usr/lib/python36.zip',
'/usr/lib/python3.6',
'/usr/lib/python3.6/lib-dynload',
'/home/ubuntu/.local/lib/python3.6/site-packages',
'/usr/local/lib/python3.6/dist-packages',
'/usr/lib/python3/dist-packages',
]
USER_BASE: '/home/ubuntu/.local' (exists)
USER_SITE: '/home/ubuntu/.local/lib/python3.6/site-packages' (exists)
ENABLE_USER_SITE: True