GNU/Linux >> Tutoriels Linux >  >> Linux

Pipenv - L'outil d'emballage Python officiellement recommandé

L'autre jour, nous avons publié un guide du débutant pour gérer les packages Python à l'aide de PIP . Dans ce guide, nous avons expliqué comment installer pip et comment installer, mettre à jour et désinstaller les packages Python à l'aide de pip. Nous avons également discuté de l'importance des environnements virtuels et de la manière de créer un environnement virtuel à l'aide des outils venv et virtualvnv. Aujourd'hui, nous allons découvrir un autre gestionnaire de packages python nommé pipenv . Il s'agit du nouvel outil Python Packaging recommandé par Python.org. Il peut être utilisé pour installer et gérer facilement les dépendances Python sans avoir à créer d'environnements virtuels. Pipenv crée et gère automatiquement un virtualenv pour vos projets. Il ajoute/supprime également des packages de votre Pipfile lorsque vous installez/désinstallez des packages.

Pourquoi Pipenv ?

Pipenv résout les problèmes en temps réel suivants :

  • Vous n'avez plus besoin de créer un environnement virtuel. Pipenv créera automatiquement virtualenv pour vos projets. Pour faire simple, pip et virtualenv fonctionnent ensemble.
  • Gérer un requirements.txt peut être problématique, donc Pipenv utilise les prochains Pipfile et Pipfile.lock à la place, ce qui est supérieur pour les cas d'utilisation de base.
  • C'est sécurisé. Les hachages sont utilisés partout, toujours. Exposez automatiquement les failles de sécurité.
  • Consultez le graphique de dépendance à tout moment.
  • Rationnalisez le workflow de développement en chargeant des fichiers .env.

Eh bien, commençons.

Installez Pipenv, l'outil d'empaquetage Python officiellement recommandé

Il existe de nombreuses façons d'installer Pipenv. Nous verrons deux méthodes officiellement recommandées.

1. Installer pipenv en utilisant pip

La méthode officielle recommandée consiste à utiliser pip . Assurez-vous d'avoir installé python et pip. Sinon, référez-vous à notre guide précédent lié dans le premier paragraphe de cet article.

Une fois pip installé, exécutez la commande suivante pour installer pipenv.

$ pip install --user pipenv

Cette commande installera pipenv au niveau utilisateur (c'est-à-dire pas à l'échelle du système). Si pipenv n'est pas disponible dans votre shell après l'avoir installé, vous devrez peut-être ajouter le répertoire binaire de votre base d'utilisateurs à votre CHEMIN. Si vous ne connaissez pas votre base d'utilisateurs, exécutez la commande suivante pour le savoir :

$ python -m site --user-base

Vous verrez une sortie comme ci-dessous.

/home/sk/.local

Comme vous pouvez le voir dans la sortie ci-dessus, mon répertoire de base d'utilisateurs est /home/sk/.local , et le répertoire binaire de ma base est /home/sk/.local/bin . Dégager? Bon. Maintenant, ajoutez ceci à votre PATH. Pour ce faire, modifiez votre ~/.profile fichier :

$ vi ~/.profile

Ajoutez cette ligne à la fin :

export PATH="$HOME/.local/bin:$PATH"

Appuyez sur ESC clé et tapez :wq pour enregistrer et quitter le fichier. Ensuite, exécutez la commande suivante pour appliquer les modifications.

$ source ~/.profile

Enfin, exécutez la commande suivante :

$ pipenv --update

Pour mettre à jour pipenv à tout moment, exécutez la commande suivante :

$ pip install --user --upgrade pipenv

2. Installer pipenv avec pipsi

Pipsi est un outil puissant qui vous permet d'installer des scripts Python dans des environnements virtuels isolés.

Pour installer pipsi, exécutez :

$ curl https://raw.githubusercontent.com/mitsuhiko/pipsi/master/get-pipsi.py | python

Suivez les instructions à l'écran, vous devrez mettre à jour votre PATH.

Une fois pipsi installé, exécutez les commandes suivantes pour installer pipenv :

$ pipsi install pew
$ pipsi install pipenv

Enfin, exécutez la commande suivante :

$ pipenv --update

Pour mettre à jour pipenv à tout moment, exécutez simplement :

$ pipsi upgrade pipenv

Gérer les packages Python à l'aide de Pipenv

Exécutez 'pipenv' dans votre shell pour afficher la liste des commandes disponibles et des options générales.

$ pipenv

Exemple de sortie :

Installer des packages

Créez un nouveau projet ou accédez au répertoire du projet existant.

$ mkdir myproject
$ cd myproject

Installez les packages pour votre projet :

$ pipenv install requests

Quand vous ls dans le répertoire de votre projet (c'est-à-dire myproject dans ce cas), vous verrez deux fichiers à savoir Pipfile , et Pipfile.lock . Le Pipfile contient des informations sur le package nouvellement installé, telles que le nom, la version, etc. Vous pouvez utiliser ce Pipfile pour suivre les dépendances dont votre projet a besoin lorsque vous souhaitez réinstaller ou partager le projet avec d'autres.

$ cat Pipfile

Et, le Pipfile.lock contient vos informations système, toutes les dépendances du package installé, y compris leur version, et tous les hachages pour tous les packages installés et leurs dépendances.

$ cat Pipfile.lock

Installez maintenant un autre package et vérifiez à nouveau le contenu des deux fichiers. Vous remarquerez que le Pidfile contient maintenant deux packages. Et, Pidfile.lock contient toutes les dépendances des packages installés, y compris leur version, et tous les hachages pour tous les packages installés et leurs dépendances. Pour faire simple, ces deux fichiers seront mis à jour automatiquement chaque fois que vous installez un nouveau package.

As-tu remarqué? Je n'ai créé aucun environnement virtuel. Pipenv a automatiquement créé un environnement virtuel pour mon projet. Vous vous demandez où sont stockés vos projets ? Exécutez simplement cette commande pour connaître l'emplacement de votre environnement virtuel.

$ pipenv --venv
/home/sk/.local/share/virtualenvs/myproject-x7-2XYPN

Pour afficher les détails de la maison de votre projet, exécutez :

$ pipenv --where
/home/sk/myproject

Comme vous pouvez dans les deux sorties, "/home/sk/myproject" est le répertoire personnel de mon projet et "/home/sk/.local/share/virtualenvs/myproject-x7-2XYPN" est mon environnement virtuel.

Vous pouvez "ls" dans votre virtualenv pour vérifier ce qu'il y a dedans.

$ ls /home/sk/.local/share/virtualenvs/myproject-x7-2XYPN

Mettre à jour les packages

Pour mettre à jour tous les packages, exécutez :

$ pipenv update

Cette commande désinstallera tous les packages et réinstallera le(s) package(s) vers les dernières versions compatibles.

Vérifier l'intégrité d'un paquet

Êtes-vous inquiet s'il existe des failles de sécurité dans les packages installés ? Aucun problème! Pipenv vous soutient. Pour vérifier l'intégrité des packages, exécutez simplement la commande suivante :

$ pipenv check
Checking PEP 508 requirements…
Passed!
Checking installed package safety…
All good!

La commande ci-dessus vérifie les vulnérabilités de sécurité et les marqueurs PEP 508 fournis dans le Pipfile.

Afficher le graphique de dépendance

Exécutons 'pipenv graph' et voyons ce qui se passe.

$ pipenv graph

Comme vous pouvez le voir, cette commande affiche le graphique de dépendance.

Désinstaller un package

Pour supprimer un package, exécutez :

$ pipenv uninstall requests
Un-installing speedtest-cli…
Uninstalling speedtest-cli-1.0.7:
 Successfully uninstalled speedtest-cli-1.0.7

Removing speedtest-cli from Pipfile…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (c23e27)!

Pour tout désinstaller, exécutez :

$ pipenv uninstall --all
Un-installing all packages from virtualenv…
Found 1 installed package(s), purging…

Environment now purged and fresh!

Pour plus de détails, exécutez :

$ pipenv -h

Ou,

$ pipenv --man

D'après ce que j'ai testé, Pipenv est beaucoup plus facile à utiliser que pip. Comme il est officiellement recommandé par Python.org, vous pouvez désormais vous débarrasser complètement de venv et virtualenv lors de l'installation de packages Python.

Suggestion de lecture :

  • Pipx – Installer et exécuter des applications Python dans des environnements isolés

Linux
  1. Comment installer Python sur Linux

  2. Comment installer Python sur Linux Mint 20

  3. Erreur :Il manque la bibliothèque OpenSSL ? en essayant d'installer python

  4. L'outil de ligne de commande pdftotext est-il pour mac ?

  5. Méthode recommandée pour installer plusieurs versions de Python sur Ubuntu 20.04

Comment installer Python 3 sur Windows 10

Installer python 3 sur Redhat 8

Comment installer Scrapy un outil d'exploration Web dans Ubuntu

Comment installer le nouvel outil d'instantané Kali Linux, Unkaputtbar

Comment installer la distribution Anaconda Python sur Ubuntu 18.04

Postman sur le système Linux :le meilleur outil d'API pour les développeurs de logiciels