Переименуйте исполняемый файл Python 3.7 без проблем - PullRequest
0 голосов
/ 20 октября 2018

Я переименовал python.exe в python37.exe, чтобы избежать конфликта с другими версиями.Это работает для запуска python, но если я запускаю pip37.exe (находится в / Scripts), я получаю следующую ошибку:

Fatal error in launcher: Unable to create process using '"c:\python37-32\python.exe"  "C:\Python37-32\Scripts\pip37.exe"

Есть ли способ сохранить python.exe переименованным в python37.exe, новсе инструменты Python работают?

Ответы [ 2 ]

0 голосов
/ 22 октября 2018

В Windows Python устанавливает PyLauncher .Вам не нужны виртуальные среды или переименование трюков.py.exe находится в стандартном пути Windows, имеет переключатели командной строки для выбора используемой версии Python и позволяет с помощью «shebangs» указать, какую версию Python запускать для сценариев:

py script.py          # Run the latest Python installed (or specified by PY_PYTHON environment variable).
py -2 script.py       # Run the latest Python 2 version installed.
py -3 script.py       # Run the latest Python 3 version installed.
py -2.7 script.py     # Run the specific Python version.
py -2.7-32 script.py  # Run the 32-bit specific Python version.

Сценарии могутиспользуйте шебанги, похожие на Linux:

#!python2
#!python3
#!python2.7
#!python2.7-32 

Для запуска pip с определенной версией:

py -2.7 -m pip install ...
0 голосов
/ 20 октября 2018

Это звучит как ПЛОХАЯ ИДЕЯ.

Существуют инструменты, разработанные, чтобы помочь вам управлять именно такими вещами.Лучшим из которых является imho pyenv: https://github.com/pyenv/pyenv

Его довольно просто установить.Требуется некоторое время, чтобы привыкнуть - оборачивать голову виртуальными средами, - но в конечном итоге с ней намного проще работать.

Например, в моей системе у меня есть следующие версии python:

pyenv versions
  system
  2.7.10
* 3.5.6 (set by /Users/.pyenv/version)
  3.5.6/envs/core4
  3.6.4
  3.6.4/envs/core5
  core4
  core5

Тот, у которого звездочка, в настоящее время является глобальной версией, которая будет использоваться в любой оболочке по умолчанию.Я могу изменить это, например, используя pyenv global 3.6.4.Я также могу создавать виртуальные среды.Например, core4 и core5 - это виртуальные среды, которые я создал для конкретных проектов.У каждой из них будут свои собственные библиотеки, установленные pip install и разные версии Python.Вы можете активировать virtualenv для данного сеанса оболочки, например, pyenv activate core5.

И если вы думаете, «как это связано с Windows», посмотрите здесь: https://duckduckgo.com/?q=Windows+Subsystem+for+Linux&atb=v93-1__&ia=web издесь: http://timmyreilly.azurewebsites.net/python-pip-virtualenv-installation-on-windows/

...