pip3.10 install virtualenv вызывает ошибку Fatal error in launcher
В системе есть несколько версий интерпретатора python и все они в Path
Так как в основном пользуюсь 3.7, то в директории Python37 лежит файл python.exe, для того, чтобы командой python main.py вызывать именно 3.7 версию.
Проблема в том, что команда pip3.10 install virtualenv вызывает ошибку
Fatal error in launcher: Unable to create process using '"C:\Users\User\AppData\Local\Programs\Python\Python310\python.exe" "C:\Users\User\AppData\Local\Programs\Python\Python310\Scripts\pip3.10.exe" install virtualenv': ?? ??????? ????? ????????? ????
Это логично, ведь python.exe лежит только в python37. И данную ошибку можно исправить добавив python.exe в Python310. Но в такой ситуации в Path получается две директории в которых хранится python.exe и при выполнении команды python запустится интерпретатор python310.
Вопрос, как сделать так, чтобы при выполнении python в cmd запускался именно python3.7, а при pip3.10 install virtualenv устанавалась библиотека для python 3.10? Можно конечно всегда прописывать
"C:\Users\User\AppData\Local\Programs\Python\Python310\python310.exe" pip3.10.exe install virtualenv
но по-моему застрелиться проще.
Ответы (1 шт):
Не нужно удалять python.exe из дополнительных установок интерпретатора Python. Удалите дополнительные C:\Users\User\AppData\Local\Programs\Python\Python310, C:\Users\User\AppData\Local\Programs\Python\Python39 из переменных окружения (Scripts по идее можно оставить), тогда через python.exe будет запускаться версия Python 3.7. Дополнительные версии интерпретатора запускайте через py -3.9или py -3.10.
Вместо virtualenv используйте стандартный модуль venv, его не нужно дополнительно устанавливать. venv запускайте нужной версией интерпретатора, например через py -3.10 -m venv имя_окружения
