Environnement de développement Python pour macOS utilisant venv 2016

De plus, comme c'est devenu un environnement pour écrire Python dans le développement, j'ai préparé un environnement Python car c'est une bonne idée. Je l'utilise principalement pour le développement Web + un petit script, et maintenant je ne gère plus le code système 2, j'ai donc arrêté d'utiliser pyenv et pyenv-virtualenv et j'ai changé pour utiliser venv. (Ajout: 2017/12/29 Il est toujours en développement dans cet environnement à partir de 2017.)

Environnement: OS X EL Capitan, High Sierra

Désinstaller pyenv, pyenv-virtualenv

Désinstallez pyenv et pyenv-virtualenv selon si pyenv est requis ou non organigramme --Qiita. Voir le lien pour plus de détails, mais il semble que pyenv n'est pas nécessaire pour ceux qui sont arrivés à cet article à la recherche d'un moyen de créer un environnement de développement.

J'avais l'habitude d'utiliser pyenv pour configurer un fichier de version .python dans le passé, mais je ne peux pas spécifier quelque chose comme 3.5. *, Donc chaque fois que je mets à jour une version mineure de 3.5.1 à 3.5.2. J'étais en train de réécrire la version python. Donc, .python-version est un fichier qui montre la version exécutable, donc bien sûr je l'ai géré avec git, mais chaque fois que je mets à niveau, un historique supplémentaire de git est ajouté, et si j'essaye de l'exécuter après un long moment, l'ancienne version J'étais tombé dans le problème de ne pas pouvoir fonctionner avec une erreur de version à moins d'avoir installé Python ou réécrit la version .python.

Cependant, en premier lieu, seuls 3 systèmes sont actuellement gérés par des individus et il n'y a pas besoin de gestion de version Python. De plus, nous avons décidé qu'il n'était pas nécessaire d'utiliser pyenv car les versions et les packages des produits de l'équipe peuvent être gérés avec Dockerfile et autres. Merci pour votre aide pendant la période de transition. Merci pyenv.

$ brew uninstall --force pyenv
$ brew uninstall --force pyenv-virtualenv
$ rm -rf .pyenv/

Installation et mise à niveau de la série Python 3 d'Imadoki

Installer avec homebrew

$ brew install python3

Pour appeler Python3, python3, pip devient pip3. Si vous êtes invité à mettre à niveau pip3,

$ pip3 install --upgrade pip

Après cela, vous pouvez faire une mise à niveau de la bière même lorsque vous en avez envie.

$ brew upgrade

Vim

Ce sont les troisièmes plug-ins liés au développement Python. L'utilisation détaillée est laissée au document officiel et omise.

Spécification de la commande d'exécution dans quickrun.vim

Le développement n'utilise que la série Python 3, mais la commande python exécute le système python (série 2.7 dans osx), donc la commande d'exécution dans quickrun.vim spécifie d'exécuter 3 séries.

let g:quickrun_config = {
  \ 'python': {
  \   'command': 'python3'
  \ },

Installez uniquement les packages requis globalement dans l'environnement global

Dans un environnement global, installez uniquement le nombre minimum de packages. Ici, flake8 requis pour une utilisation dans l'éditeur est installé à titre d'exemple. Les autres packages nécessaires sont installés du côté Docker ou venv, ne les installez donc pas globalement.

$ pip3 install flake8
Collecting flake8
  Downloading flake8-3.0.4-py2.py3-none-any.whl (64kB)
    100% |████████████████████████████████| 71kB 320kB/s
Collecting pycodestyle<2.1.0,>=2.0.0 (from flake8)
  Using cached pycodestyle-2.0.0-py2.py3-none-any.whl
Collecting mccabe<0.6.0,>=0.5.0 (from flake8)
  Downloading mccabe-0.5.2-py2.py3-none-any.whl
Collecting pyflakes!=1.2.0,!=1.2.1,!=1.2.2,<1.3.0,>=0.8.1 (from flake8)
  Using cached pyflakes-1.2.3-py2.py3-none-any.whl
Installing collected packages: pycodestyle, mccabe, pyflakes, flake8
Successfully installed flake8-3.0.4 mccabe-0.5.2 pycodestyle-2.0.0 pyflakes-1.2.3

Conserver les fichiers de gestion des packages installés globalement dans des fichiers dotfiles

Sortie du fichier de gestion des packages

La commande pip3 freeze peut afficher une liste des packages installés, alors utilisez-la.

$ pip3 freeze
flake8==3.0.4
mccabe==0.5.2
pycodestyle==2.0.0
pyflakes==1.2.3

Python le produit généralement en tant que requirements.txt, suivez donc la convention.

#La liste des packages nécessite.Sortie vers txt
$ pip3 freeze > ~/dotfiles/requirements.txt

Installer à partir du fichier de gestion des packages

Pour installer en se référant à requirements.txt dans un nouvel environnement, appuyez sur la commande suivante.

$ pip3 install -r ~/dotfiles/requirements.txt

Supplément: mise à jour du package

Si vous souhaitez tout mettre à jour en même temps, il existe une commande comme celle-ci, je l'ai donc enregistrée en tant qu'alias.

alias pip3_update_all='pip3 freeze --local | grep -v "^\-e" | cut -d = -f 1 | xargs pip3 install -U'

Référence: Mise à jour par lots avec pip --Qiita

Supplément: À propos des commandes python / python3, pip / pip3

$ python est Python 2.7.10 dépendant du système et $ python3 est Python 3 installé par Homebrew. «$ Pip» et «$ pip3» sont tous deux associés à Python 3 installé avec Homebrew.

# python,chemin python3,Vérifier la version
$ where python
/usr/bin/python

$ where python3
/usr/local/bin/python3

$ python -V
Python 2.7.10

$ python3 -V
Python 3.5.2

# pip,chemin pip3,Vérifier la version
$ where pip
/usr/local/bin/pip

$ where pip3
/usr/local/bin/pip3

$ pip -V
pip 9.0.0 from /usr/local/lib/python3.5/site-packages (python 3.5)

$ pip3 -V
pip 9.0.0 from /usr/local/lib/python3.5/site-packages (python 3.5)

utiliser venv

Docker est essentiellement utilisé pour le développement Web, mais lors de l'utilisation de l'environnement local pour l'exécution de scripts, etc., venv (virtualenv est incorporé dans Python) ajouté dans Python 3.3 est utilisé au besoin. Utilisez pour créer un environnement virtuel. La commande est «pyvenv».

Post-scriptum: 2017-05-31

À partir de Python 3.6, il devient python3 -m venv, et pyvenv est obsolète.

Créer un environnement virtuel

#Créez un environnement virtuel avec le nom myenv
# Python 3.5 ou plus tôt
$ pyvenv myenv
# Python 3.6 ou plus tard
$ python3 -m venv myenv



# activate
$ source myenv/bin/activate

# deactivate
$ deactivate

Essayez d'activer l'environnement virtuel et d'installer le package dans l'environnement virtuel.

Dans un environnement virtuel, installez uniquement les packages requis pour chaque environnement.

#Activer l'environnement virtuel
$ source myenv/bin/activate 

#Essayez d'installer le flacon
(myenv) $ pip install flask
Collecting flask
  Downloading Flask-0.11.1-py2.py3-none-any.whl (80kB)
    100% |████████████████████████████████| 81kB 2.3MB/s
Collecting Werkzeug>=0.7 (from flask)
  Downloading Werkzeug-0.11.11-py2.py3-none-any.whl (306kB)
    100% |████████████████████████████████| 307kB 2.5MB/s
Collecting click>=2.0 (from flask)
  Using cached click-6.6.tar.gz
Collecting itsdangerous>=0.21 (from flask)
  Downloading itsdangerous-0.24.tar.gz (46kB)
    100% |████████████████████████████████| 51kB 3.8MB/s
Collecting Jinja2>=2.4 (from flask)
  Downloading Jinja2-2.8-py2.py3-none-any.whl (263kB)
    100% |████████████████████████████████| 266kB 2.4MB/s
Collecting MarkupSafe (from Jinja2>=2.4->flask)
  Downloading MarkupSafe-0.23.tar.gz
Installing collected packages: Werkzeug, click, itsdangerous, MarkupSafe, Jinja2, flask
  Running setup.py install for click ... done
  Running setup.py install for itsdangerous ... done
  Running setup.py install for MarkupSafe ... done
Successfully installed Jinja2-2.8 MarkupSafe-0.23 Werkzeug-0.11.11 click-6.6 flask-0.11.1 itsdangerous-0.24

#Consultez la liste des colis(La liste des packages de l'environnement virtuel myenv est sortie)
(myenv) $ pip freeze
click==6.6
Flask==0.11.1
itsdangerous==0.24
Jinja2==2.8
MarkupSafe==0.23
Werkzeug==0.11.11

#Désactiver l'environnement virtuel
$ deactivate

#Consultez la liste des colis(La liste des packages de l'environnement global est sortie)
$ pip3 freeze
flake8==3.0.4
mccabe==0.5.2
pycodestyle==2.0.0
pyflakes==1.2.3

Référence: 28.3. Venv - Création d'un environnement virtuel - Documentation Python 3.5.2

Il a été confirmé que l'environnement virtuel peut être commuté sans aucun problème.

Remarque: à propos des commandes python / python3, pip / pip3 sur venv

Dans l'environnement virtuel, la commande sans 3 pointe également vers la même version, il n'y a donc pas de problème même si vous appuyez sur la commande sans 3.

# python,chemin python3,Vérifier la version
(myenv) $ where python
/Users/user_name/myenv/bin/python
/usr/bin/python

(myenv) $ where python3
/Users/user_name/myenv/bin/python3
/usr/local/bin/python3

(myenv) $ python -V
Python 3.5.2

(myenv) $ python3 -V
Python 3.5.2


# pip,chemin pip3,Vérifier la version
(myenv) $ where pip
/Users/user_name/myenv/bin/pip

(myenv) $ where pip3
/Users/user_name/myenv/bin/pip3

(myenv) $ pip -V
pip 9.0.0 from /Users/user_name/pyvenv/lib/python3.5/site-packages (python 3.5)

(myenv) $ pip3 -V
pip 9.0.0 from /Users/user_name/pyvenv/lib/python3.5/site-packages (python 3.5)

Résumé

pyenv, pyenv - Préparation d'un environnement Python propre sans virtualenv. A partir de maintenant, Python sera mis à jour avec brew upgrade, et si vous passez à un nouvel environnement, vous pouvez simplement faire pip3 install -r ~ / dotfiles / requirements.txt.

Recommended Posts

Environnement de développement Python pour macOS utilisant venv 2016
Construction de l'environnement de développement Python3 + venv + VSCode + macOS
[Pour organiser] Environnement de développement Python
Créer un environnement de développement Python à l'aide de pyenv sur MacOS
Options d'environnement de développement Python pour mai 2020
Construction de l'environnement de développement Python sur macOS
Paramètres Emacs pour l'environnement de développement Python
Utilisation de venv dans un environnement Windows + Docker [Python]
Créer un environnement de développement Python pour le développement de l'IA
Créer un environnement de développement local pour Lambda + Python à l'aide de Serverless Framework
Construction de l'environnement de développement Python
À propos de l'environnement de développement Python
Construction de l'environnement de développement python2.7
Environnement de développement en Python
Maintenance de l'environnement Python pour les projets
Procédure de création d'un environnement d'isolation Python (environnement venv)
Structure de répertoire pour le développement piloté par les tests à l'aide de pytest en python
Environnement de développement adapté à ArcPy
Un mémo pour créer un environnement de développement python avec macOS Catalina
Installation d'OpenCV3 pour Python3 @macOS
Construction de l'environnement Python pour Mac
Construction de l'environnement Python3 (pour les débutants)
Organiser l'environnement de développement Python
Construire un environnement virtuel Python en utilisant venv (Django + MySQL ①)
[ev3dev × Python] Construction de l'environnement de développement ev3dev
Construction de l'environnement de développement de plug-in QGIS3 Python avec VSCode (macOS)
[Python] Construction de l'environnement Django (pyenv + pyenv-virtualenv + Anaconda) pour macOS
venv: gestion de l'environnement virtuel Python
[MEMO] [Construction de l'environnement de développement] Python
environnement virtuel standard python venv
mémo python (pour moi-même): À propos de l'environnement de développement virtualenv
Mémo de construction d'environnement d'apprentissage automatique par Python
notebook jupyter dans l'environnement venv python3.8
Créer un environnement d'apprentissage automatique à l'aide de Python sur MacOSX
Création d'un environnement de développement pour les applications Android - Création d'applications Android avec Python
Vitesse explosive! Utilisation de Python Simple HTTP Server pour le développement Kintone
Environnement de développement Python fluide pour les équipes [Poetry + pyenv + black + isort]
Construction d'un environnement de développement Cortex-M pour TOPPERS utilisant Raspeye
Configurer un environnement de développement Python sur Ubuntu
[Pour les débutants] Django -Construction d'environnement de développement-
Préparez votre premier environnement de développement Python
[Python3] Construction de l'environnement de développement << Édition Windows >>
[TouchDesigner] Conseils pour la déclaration par python
Mémo de configuration de l'environnement de développement Vim + Python
Installer l'environnement de développement Python sur Windows 10
Construction de l'environnement Python3 TensorFlow pour Mac
[Python] Raison du remplacement à l'aide de super ()
Mémo de construction de l'environnement de développement Emacs Python
Vérification de l'environnement de développement NAOqi Python
[Python] Quatre-vingt-dix-neuf tables utilisant des instructions for
Configurer un environnement de développement Python avec Atom
Construction de l'environnement Python3.6 (à l'aide de l'environnement Win Anaconda)
Essayez d'utiliser virtualenv qui peut créer un environnement virtuel de Python
venv (Python)
Remarques sur l'utilisation d'OpenCV avec Windows10 Python 3.8.3.
Procédure de construction de l'environnement de développement Python (anaconda) (SpringToolsSuites) _2020.4
Créer un environnement pour Python intégré à Blender
Ajout d'un environnement de développement local sur MacOS
[Environnement de développement] Python avec Xcode [Avec transition d'écran]
Gérez plusieurs environnements d'exécution à l'aide de Python venv