Ich weiß, dass dies eine ähnliche Frage ist wie die, die schon oft gestellt wurde, aber ich kann immer noch keine vertrauenswürdige Lösung finden.
Ich habe viele Versionen von Python auf meinem Ubuntu 16.04 installiert, von 2.7 bis zum neuesten 3.7.4.
Standard ist die 2.7. Ich weiß, dass ich die Standardeinstellung nicht ändern sollte, weil andere es getan haben und es zu schwerwiegenden Problemen wie Systemausfällen geführt hat.
Allerdings muss ich eine Software über pip installieren:
pip install damn_software
was Python>=3.6
erfordert:~$ pip install damn_software
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Collecting damn_software
Using cached https://files.pythonhosted.org/packages/cc/19/632db1d5095a35b08ba000d63e1ceffaf56c730dbd259f021e1fb7a75f68/damn_software-0.1.8.tar.gz
ERROR: Command errored out with exit status 1:
command: /usr/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-qDPgIM/damn_software/setup.py'"'"'; __file__='"'"'/tmp/pip-install-qDPgIM/damn_software/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
cwd: /tmp/pip-install-qDPgIM/damn_software/
Complete output (1 lines):
ERROR: Python (3, 5) or later is required by software-helpers for damn_software
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
Ich weiß nicht, wie ich das umgehen kann? Vielleicht ein Symlink?
BEARBEITEN :Ich musste die folgenden zusätzlichen Befehle ausführen, bevor die Installation durchging:
python3.7 -m pip install --user --upgrade pip
python3.7 -m pip install your_packages
sudo apt install python3.7-dev
Akzeptierte Antwort:
Führen Sie einfach den Python-Interpreter der gewünschten Version mit pip
aus als auszuführendes Modul, wie:
python3.6 -m pip install some_package
Auf diese Weise können Sie zu 100 % sicher sein, dass der Interpreter, mit dem Sie Ihre Skripte starten, derselbe ist, für den Sie Pip-Pakete verwalten. Keine Systemänderungen erforderlich.
Der pip
ausführbare Datei ist sowieso nicht genau als eine feste Version definiert, was auch immer als nächstes aktualisiert wird, würde sie wahrscheinlich wieder überschreiben. Außerdem bricht es manchmal aus anderen Gründen wie Versionsinkompatibilitäten sowieso ab. Normalerweise würde ich es überhaupt nicht direkt verwenden, außer vielleicht, wenn Sie sich in einer venv (virtuelle Python-Umgebung) befinden, wo es genau definiert ist, was es ist.