[PYTHON] Utilisation du fichier de contraintes ajouté dans pip 7.1

introduction

Certaines fonctionnalités ont été ajoutées au pip utilisé lors de l'installation de la bibliothèque Python depuis la version 7.1.

Sa fonction, appelée fichier de contraintes, n'est pas très connue, mais elle peut être très utile à certains égards.

Caractéristiques du fichier de contraintes

Les fonctions du fichier de contraintes et du fichier des exigences sont très similaires et leurs formats sont exactement les mêmes.

La seule différence est que le fichier de contraintes contrôle uniquement la version et n'installe pas la bibliothèque décrite.

Par exemple, lorsque vous avez le fichier suivant

werkzeug.txt


werkzeug=== 0.11.1

Werkzeug 0.11.1 est installé lorsqu'il est utilisé comme fichier d'exigences comme suit:

pip install -r werkzeug.txt  # 0.11.1 est installé

En revanche, werkzeug n'est pas installé même s'il est défini comme fichier de contraintes.

pip install -c werkzeug.txt #Rien n'est installé

Cependant, vous pouvez contrôler la version installée en l'utilisant avec l'argument comme suit.

pip install werkzeug -c werkzeug # 0.11.1 est installé

Vous pouvez également utiliser le fichier des exigences et le fichier des contraintes ensemble.

En résumé, c'est comme suit.

$ pip install -r werkzeug.txt #La version spécifiée sera installée
$ pip install -c werkzeug.txt #Rien n'est installé
$ pip install -r werkzeug.txt -c werkzeug.txt #La version spécifiée sera installée
$ pip install werkzeug -c werkzeug.txt #La version spécifiée sera installée

Utilisation pratique du fichier de contraintes

Le fichier de contraintes fonctionne mieux lorsqu'il est combiné avec le fichier de conditions.

Une utilisation courante de Requirements File était d'écrire la sortie de pip freeze telle quelle. Cependant, cette méthode ne peut pas faire la distinction entre la bibliothèque installée et la bibliothèque dépendante de cette bibliothèque.

Par exemple, supposons que la bibliothèque A dépende des bibliothèques B et C. À ce moment-là, si vous gelez après l'installation de A, B et C seront affichés, et il n'y a aucun moyen de les distinguer.

$ pip install A
$ pip freeze
A==1.0.0
B==1.0.0
C==1.0.0

Ici, en décrivant uniquement les bibliothèques directement dépendantes dans le fichier de conditions et en décrivant le résultat de pip freeze dans le fichier de contraintes, il est possible de faire la distinction entre les bibliothèques directement dépendantes et les bibliothèques indirectement dépendantes. Peut être fait.

$ cat requirements.txt
A
$ cat constraints.txt
A==1.0.0
B==1.0.0
C==1.0.0
$ pip install -r requirements.txt -c constraints.txt

Résumé

Dans cet article, nous avons présenté le fichier de contraintes.

Il s'agit toujours d'une nouvelle fonctionnalité, vous pourrez donc peut-être l'utiliser plus facilement que celles présentées ici. Si vous trouvez un moyen aussi pratique de l'utiliser, je vous serais reconnaissant de bien vouloir me le faire savoir.

référence

Recommended Posts

Utilisation du fichier de contraintes ajouté dans pip 7.1
Utilisez le modèle jinja2 dans un fichier Excel
L'histoire du "trou" dans le fichier
Gestion des codes de caractères des fichiers en IronPython
R: Utilisez le japonais au lieu du japonais dans le script
Utilisez le dernier pip dans un environnement virtualenv
Résumé de l'utilisation de MNIST avec Python
Erreur de date de l'adresse déjà utilisée dans Flask
Évaluation de la vitesse de sortie du fichier CSV en Python
Comment utiliser le moteur de modèle dans une application de fichier de Pyramid
Utilisons les données ouvertes de "Mamebus" en Python
Utilisez la date sur l'axe des x du tsplot représenté dans seaborn
Utilisation pratique d'ipython
Opérations sur les fichiers en Python
Traitement de fichiers en Python
Utiliser DataFrame en Java
Utiliser des dates en Python
Utiliser Mean avec DataFrame
Utiliser Valgrind avec Python
Utiliser pip avec MSYS2
Utilisation gracieuse de MySQLdb
Manipulation de fichiers avec Python
Utiliser ujson dans les requêtes
Mettez le pip dans le mélangeur
Utiliser le profileur en Python
Réimportation du fichier .py
Utiliser pip sur Windows
Enquête sur l'utilisation du machine learning dans les services réels
[Note] Importation de fichiers dans le répertoire parent en Python
Comparaison de l'utilisation des fonctions d'ordre supérieur dans Python 2 et 3
Installer des packages qui ne peuvent pas utiliser de pips dans Azure App Service
Google recherche la chaîne sur la dernière ligne du fichier en Python
Une commande pour lister tous les fichiers par ordre de nom de fichier