[PYTHON] Erstellen einer Umgebung mit pyenv und pyenv-virtualenv

Hinweise zum Erstellen einer eigenen Umgebung

Notieren Sie sich dies, wenn Sie es aus der Ferne benötigen Die Site, auf die Sie verwiesen haben, ist möglicherweise leichter zu verstehen Die Umgebung ist "mac OSX: Yosemite".

pyenv pyenv verwaltet die Python-Umgebung. Sie können eine Python-Umgebung erstellen, die sich von der Standardumgebung unterscheidet.

Referenz-URL: Verwendung von pyenv und virtualenv Verwalten der Python-Umgebung mit pyenv Versuchen Sie es mit pyenv und virtualenv

Menschen, die keine Erklärungen lesen wollen (Menschen mit Wissen)

https://github.com/KodairaTomonori/Qiita/blob/master/shell/construct_pyenv.sh Kopieren Sie dies und führen Sie es aus, um die Umgebung zu Hause zu erstellen Wenn Sie etwas anderes als das Haus bauen möchten, können Sie das ~ / Teil in einen beliebigen Pfad umschreiben.

Pyenv zur Verfügung stellen

Zuerst Git-Klon

$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv



 Schreiben Sie dann Folgendes in `~ / .bash_profile`. (Über .bashrc, .bash_profile: [Wirklich korrekte Verwendung von .bashrc und .bash_profile](http://qiita.com/magicant/items/d3bb7ea1192e63fba850)

export PYENV_ROOT="HOME/.pyenv" export PATH="PYENV_ROOT/bin:PATH" eval "(pyenv init -)"


 \ * 2020/03/17 Behoben: Doppelquart hinzugefügt

## Installation jeder Python-Version
 Sie können es mit `pyenv install 3.5.0` installieren. Die Version ist optional.


#### **`install-version.`**

$ pyenv install 3.5.0 $ pyenv install 2.7.9

 Wenn Sie einen Fehler machen, ändern Sie "install" in "deinstallieren" und führen Sie aus.

## Python-Versionen wechseln
 Sie können die Versionen mit "pyenv global x.x.x" oder "pyenv local x.x.x" wechseln.
 Wenn Sie es auf "global" setzen, wird es im Ganzen wiedergegeben, und wenn Sie es auf "lokal" setzen, wird es im aktuellen Verzeichnis wiedergegeben. Diese Reflexion wird auch dann fortgesetzt, wenn Sie das Terminal verlassen. Daher ist es sehr praktisch, sie für jeden Ordner mit "local" festzulegen.

 Änderungen in dieser Shell können mit "Shell" vorgenommen werden. Wenn Sie dies verwenden, wird die Umgebung nur in der aktuell verwendeten Shell wiedergegeben. Wenn Sie die Shell schließen und dann erneut öffnen oder wenn Sie mehrere Shells öffnen, wird die Umgebungsänderung daher nicht von anderen beeinflusst.

 Ist es "Shell", wenn Sie es vorübergehend verwenden möchten, "lokal", wenn Sie es für jeden Ordner festlegen möchten, oder "global", wenn Sie die allgemeine Standardumgebung ändern möchten?

 Sie können es wiederherstellen, indem Sie den Teil "x.x.x" in "System" ändern.


#### **`swich-python-version.`**

python --version Python 2.7.3

$ pyenv shell 2.7.9 $ python --version Python 2.7.9

$ pyenv shell 3.5.0 $ python --version Python 3.5.0

$ pyenv shell system $ python --version Python 2.7.3


## Modul installieren
 Das installierte Python (2.7.9 und 3.5.0) enthält nur das Standardmodul (Pip Freeze enthält nichts). Installieren Sie es daher.
 Um das Modul zu installieren, installieren Sie einfach ein beliebiges Modul mit "pip install" wie gewohnt.

```pip install xxxxx```

pyenv-virtualenv
 `pyenv` allein ist bequem genug, aber bequemer.
 `pyenv-virtualenv` ist ein pyenv-Plugin zum Erstellen verschiedener Umgebungen mit derselben (Python-) Version.

## Wie installiert man

#### **`$  git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv`**

Schreiben Sie dann die Einstellungen in .bash_profile

eval "$(pyenv virtualenv-init -)"

Eine neue Umgebung schaffen

Um eine neue Python-Umgebung zu erstellen, setzen Sie "pyenv virtualenv [version] ", um eine neue Umgebung mit dem Namen "virtualenv-name" zu erstellen. Geben Sie hier für "[Version]" die vorhandene Umgebung an.

make_new.


pyenv virtualenv 3.5.0 new_3.5.0

Hier können in der neu erstellten Umgebung die von pip usw. in der von pyenv erstellten Umgebung installierten Module nicht verwendet werden. Wenn Sie die in [version] verwendete verwenden möchten, fügen Sie die Option --system-site-package hinzu. Übergeben Sie dann den Pfad zu den "Site-Paketen" des mit "pyenv" erstellten.

Wenn Sie im folgenden Beispiel "--system-site-packages" hinzufügen, wird dem Pfad "~ / .pyenv / version / 3.5.0 / lib / python3.5 / site-packages" hinzugefügt.

sample_site-packages.


$ pyenv virtualenv 3.5.0 inde-3.5.0
$ pyenv virtualenv --system-site-packages 3.5.0 co-3.5.0
$ pyenv virtualenv --system-site-packages inde-3.5.0 co-inde-3.5.0

# sys.Pfad Einige Teile werden weggelassen.
$ python -c 'import sys; print(sys.path)'    #Hier ist 3.5.0
['', '~/.pyenv/versions/3.5.0/lib/python35.zip',..., '~/.pyenv/versions/3.5.0/lib/python3.5/site-packages']

(inde-3.5.0) $ python -c 'import sys; print(sys.path)'
['', '~/.pyenv/versions/3.5.0/lib/python35.zip', .... , '~/.pyenv/versions/inde-3.5.0/lib/python3.5/site-packages']

(co-3.5.0) $ python -c 'import sys; print(sys.path)'
['', '~/.pyenv/versions/3.5.0/lib/python35.zip', ... , '~/.pyenv/versions/co-3.5.0/lib/python3.5/site-packages', '~/.pyenv/versions/3.5.0/lib/python3.5/site-packages']

(co-inde-3.5.0)kodaira@fomalhaut:~$ python -c 'import sys; print(sys.path)'
['', '~/.pyenv/versions/co-inde-3.5.0/lib/python35.zip',  ... , '~/.pyenv/versions/co-inde-3.5.0/lib/python3.5/site-packages', '~/.pyenv/versions/3.5.0/lib/python3.5/site-packages']

Wenn Sie ein Modul in einer anderen Umgebung installieren möchten, können Sie irgendwo "pip freeze" schreiben und es mit "pip install -r" installieren. (Es schien eine Möglichkeit zu geben, es zu kopieren, wenn man "pyenv virtualenv" macht, aber ich konnte es nicht finden, also jemand ...)

pip_install.


---In der Umgebung, die Sie kopieren möchten----
$ pip freeze > pyp_list.txt
---Nach dem Ändern der Umgebung----
$ pip install -r pyp_list.txt

Speichern und erstellen Sie die virtuelle Umgebung neu

Ich denke, dies ist der beste Vorteil der Verwendung von pyenv-virtualenv. Es geht darum, die Umgebung zu retten und dieselbe Umgebung an anderer Stelle wiederherzustellen.

Installieren Sie zuerst das, was Sie brauchen (Rad)

install_wheel.


$ pyenv exec pip install wheel

Speichern Sie Informationen zu Modulen, die mit Pip mithilfe eines Rads installiert wurden

Speichern Sie in einem beliebigen Verzeichnis mit --wheel-dir = [dir] Oben habe ich die Ausgabe von "Pip Freeze" so wie sie ist verwendet, aber es scheint besser zu sein, "Wheel" zu verwenden.

save_module_info.


$ pyenv exec pip freeze > pyp_list.txt
$ pyenv exec pip wheel --wheel-dir=~/tmp/wheelhouse -r pyp_list.txt

Installieren Sie dasselbe mit dem Rad, das Sie zuvor beim Erstellen einer neuen Umgebung erstellt haben

Mit "Rad" können Sie das vorgefertigte Paket speichern, sodass Sie es nicht jedes Mal kompilieren müssen. Referenz-URL: Ich werde es irgendwie schreiben.

install_using_wheel.


$ pyenv virtualenv 3.5.0 tes-3.5
$ pyenv global tes-3.5
$ pip install -r pyp_list.txt --use-wheel --no-index --find-links=tmp/wheelhouse
$ pip freeze

Zusammenfassung

Sie können eine Umgebung erstellen, indem Sie "pyenv" und "pyenv-virtualenv" verwenden. Sie können die Umgebung mit "Rad" speichern und dieselbe Umgebung an anderer Stelle reproduzieren.

Bitte lassen Sie mich wissen, wenn etwas nicht stimmt oder etwas bequemeres

Recommended Posts

Erstellen einer Umgebung mit pyenv und pyenv-virtualenv
[Ubuntu 18.04] Erstellen Sie eine Python-Umgebung mit pyenv + pipenv
Installieren Sie pyenv und pyenv-virtualenv
Aufbau der Python3 TensorFlow-Umgebung (Mac und pyenv virtualenv)
Erstellen Sie eine virtuelle Umgebung mit pyenv und venv
Aufbau einer virtuellen Python-Umgebung (Version 2017) pyenv und pyenv-virtualenv und virtualenv und virtualenv wrapper sowie pyvenv und venv
Python-Umgebungskonstruktion und TensorFlow
Umgebungskonstruktion von NumPy und Matplotlib
Umgebungskonstruktion mit anyenv + pyenv (nur von pyenv migrieren (Mac))
[Python] Django-Umgebungskonstruktion (pyenv + pyenv-virtualenv + Anaconda) für macOS
Erstellen einer numerischen Berechnungsumgebung mit pyenv und miniconda3
Beginnen Sie mit Python! ~ ① Umweltbau ~
Ruby-Umgebungskonstruktion mit aws EC2
Python-Umgebungskonstruktion (Pyenv + Poesie + Pipx)
Automatisieren Sie die Umgebungserstellung mit ShellScript
Verwenden von Chainer mit CentOS7 [Umgebungskonstruktion]
Aufbau und Grundlagen der Bilderkennungsumgebung
pytorch @ python3.8 Umgebungskonstruktion mit pipenv
Erstellen einer lokalen Python-Entwicklungsumgebung Teil 1 (pyenv, pyenv-virtualenv, pip-Installation)
Umgebungskonstruktion von Tensorflow und Chainer durch Fenster mit CUDA (mit GPU)
Aufbau einer LaTeX- und R-Umgebung (ein wenig Python) mit SublimeText3 (Windows)
[Pyenv] Erstellen einer Python-Umgebung mit Ubuntu 16.04
Datenpipeline-Aufbau mit Python und Luigi
Verwenden Sie smbus mit python3 in einer pyenv-Umgebung
Vue.js + Konstruktionsmemorandum zur Flaschenumgebung ~ mit Anaconda3 ~
Erstellen einer Umgebung für Python und maschinelles Lernen (macOS)
Erstellen Sie mit pyenv eine virtuelle Umgebung für Python
Ein Memo mit RADEX-Umgebungskonstruktion
Kommen wir zu Python # 0 (Umgebungskonstruktion)
DeepIE3D-Umgebungskonstruktion
Emacs-basierte Umgebungskonstruktion
Aufbau einer Linux-Umgebung
Umgebungskonstruktion (Python)
Realisieren Sie mit Docker und Vagrant die Umgebungskonstruktion für "Deep Learning von Grund auf neu"
Django Umweltbau
Erstellen Sie eine Umgebung mit pyenv, pyenv-virtualenv, jupyter unter OS X El Capitan
CodeIgniter-Umgebungskonstruktion
Python-Umgebungskonstruktion
Python - Umgebungskonstruktion
Aufbau einer Python-Umgebung
Erstellen Sie eine Python3-Umgebung mit pyenv auf einem Mac und zeigen Sie NetworkX-Diagramme an
Golang Umweltbau
Sammeln von Informationen von Twitter mit Python (Umgebungskonstruktion)
Erstellen einer Analyseumgebung mit Docker (Jupyter Notebook + PostgreSQL)
Empfohlene Umgebung und Verwendung bei der Entwicklung mit Python
Erstellen einer Python-Umgebung mit virtualenv und direnv
Erstellen einer Anaconda-Umgebung für Python mit pyenv
Verwalten Sie die Umgebung deklarativ mit Nix und Home-Manager
Installation von Python 3 und Flask [Zusammenfassung der Umgebungskonstruktion]
[0] TensorFlow-GPU-Umgebungskonstruktion, die mit Anaconda unter Ubuntu erstellt wurde
Poetry-Virtualenv-Umgebungskonstruktion mit Centos-Sclo-Rh-Python ~ Hinweise
Python-Entwicklungsumgebung - Verwendung von Pyenv und Virtualenv-
[Django3] Umgebungskonstruktion und Zusammenfassung verschiedener Einstellungen [Python3]
Führen Sie OpenVino unter macOS und pyenv und pipenv aus
Python 3.x-Umgebungskonstruktion von Pyenv (CentOS, Ubuntu)
Entfernen Sie die alte Pyenv-Umgebung auf dem Mac und aktualisieren Sie sie