Legen Sie die python-version, die beim erstellen virtualenv verwenden pipenv
Mithilfe eines Raspberry Pi mit Debian 4.14.34-v7+, ich werde versuchen, pipenv mit Python 3.6.5 als die Standard-version von Python. Ich zuerst installieren Sie Python 3.6 durch kompilieren auf dem Pi (Stunden...). Nach einer "Roboter" - Verzeichnis habe ich dann installieren pipenv mit "$ sudo pip3 installieren pipenv" und "$pipenv installieren-drei".
Dann habe ich die shell starten und öffnen, Python, erste Python 3.5.3:
pi@raspberrypi:~/robot $ pipenv shell
Spawning environment shell (/bin/bash). Use 'exit' to leave.
. /home/pi/.local/share/virtualenvs/robot-XZ3Md9g0/bin/activate
pi@raspberrypi:~/robot $ . /home/pi/.local/share/virtualenvs/robot-XZ3Md9g0/bin/activate
(robot-XZ3Md9g0) pi@raspberrypi:~/robot $ python
Python 3.5.3 (default, Jan 19 2017, 14:11:04)
[GCC 6.3.0 20170124] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
Ich dann ändern Sie die virtualenv von "$ pipenv --python 3.6" aber nachdem es richtig (scheinbar) installiert, bekomme ich sofort die Warnung, dass pipenv noch erwartet Python-3.5...:
(robot-XZ3Md9g0) pi@raspberrypi:~/robot $ pipenv --python 3.6
Virtualenv already exists!
Remove existing virtualenv? [Y/n]: y
Removing existing virtualenv…
Creating a virtualenv for this project…
Using /usr/local/bin/python3.6m (3.6.5) to create virtualenv…
⠋Running virtualenv with interpreter /usr/local/bin/python3.6m
Using base prefix '/usr/local'
New python executable in /home/pi/.local/share/virtualenvs/robot-XZ3Md9g0/bin/python3.6m
Also creating executable in /home/pi/.local/share/virtualenvs/robot-XZ3Md9g0/bin/python
Installing setuptools, pip, wheel...done.
Virtualenv location: /home/pi/.local/share/virtualenvs/robot-XZ3Md9g0
Warning: Your Pipfile requires python_version 3.5, but you are using 3.6.5 (/home/pi/.local/share/v/r/bin/python).
$ pipenv check will surely fail.
(robot-XZ3Md9g0) pi@raspberrypi:~/robot $ python
Python 3.6.5 (default, May 3 2018, 11:25:17)
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
SO die Frage - Wie richte ich pipenv zu suchen Python-3.6, wenn ich zuerst die virtualenv? Ich kann manuell gehen und Bearbeiten Sie die Pipfile, aber das scheint sein Sieg über den Zweck des habens pipenv kümmern sich um Dinge für mich.
Du musst angemeldet sein, um einen Kommentar abzugeben.
"Bearbeiten Sie die Pipfile" ist der richtige Weg zu gehen, wenn Sie wollen, ändern Sie die Python-version einer bestehenden Umgebung.
Wenn Sie möchten, erstellen Sie eine neue - Umgebung mit Python 3.6 können Sie
eher als
und das sollte den trick tun.
Beim einrichten Ihres pipenv können Sie die version von Python mit:
pipenv --python 3.6
zu verwenden, in Python ist3.6.Bearbeitung der
Pipfile
funktioniert auch, indem Sie ändern:[requires]
python_version = "3.6.6"
spezifische version von Python geben, die Sie wollen.
Wenn Sie haben all das und noch Probleme mit dem Zugriff auf die richtige version von Python innerhalb
pipenv shell
dann möchten Sie vielleicht zu prüfen, Ihre.bashrc
- Datei, um sicherzustellen, dass Sie nicht haben einealias
für eine bestimmte version von Python.Wenn Sie wollen erstellen einer virtuellen Umgebung für Ihr Projekt die oben genannten Antworten vielleicht nicht für Sie arbeiten. Zum Beispiel, wenn Sie mehrere Versionen von python installiert, und Sie hatte Sie zum umbenennen des executables wie ich hatte, um in dem unten angeführten Beispiel, ODER möchten Sie vielleicht, um die Erstellung von virtuellen Umgebungen mit unterschiedlichen python-Versionen.
Beim erstellen von virtuellen Umgebungen für Ihre Projekte, Sie können mehr spezifische und geben Sie den Pfad der python-executable.
Denken Sie daran führen Sie den nachstehenden Befehl relativ zur Projekt-Ordner.