2017-05-24 2 views
-2

Pourquoi nous devons installer les paquets python avant de les utiliser?Pourquoi installer les paquets Python

Je travaille actuellement sur un petit programme mysql python. Ce que j'ai essayé de télécharger le module de connecteur python à partir de la page web mysql et simplement décompresser et placez-le dans le même dossier de mon code.

Et je peux importer le module correctement.

Alors, quelle est la signification de l'installation de ces paquets? Puis-je utiliser ces paquets comme matplotlib, numpy sans les installer?

Est-il possible d'avoir tous les paquets requis installés sur un dossier afin que je puisse le déplacer vers un autre ordinateur et exécuter mon programme avec seulement CPython installé (je ne veux installer aucun paquet sur cet ordinateur)?

+2

Que se passe-t-il lorsqu'un paquet Python que vous décompressez dans votre projet dépend d'un autre paquet Python? – Blender

+0

pour mysql, cela ne dépend pas d'autres paquets python donc c'est bien. –

+1

Cela peut être vrai pour 'mysql-connector', mais ce n'est pas vrai pour beaucoup d'autres paquets purs-Python comme' flask'. Par exemple, numpy ne peut pas être installé par copier/coller car il compile des tonnes de code Cython avec son fichier 'setup.py'. – Blender

Répondre

1

ce n'est pas aussi simple que cela :-)

  • certains paquets ont des dépendances, vous devez également télécharger et extraire leurs dépendances (dont vous avez besoin pacakge x et x paquet utilise y) gère gestionnaire pakcage que
  • certains paquets ont du code c (ils doivent être compilés avant utilisation (module ujson ou postgres) le gestionnaire de paquets gère
  • lorsque vous partagez votre code au lieu de partager des dépendances, vous ajoutez simplement un fichier contenant la liste des dépendances (requirements.txt) et l'autre utilisateur peut simplement installer toutes les dépendances en utilisant le paquet manager
+0

Est-il possible d'éviter toute installation des dépendances? Je veux compresser toutes les dépendances et mon code dans un fichier afin que les autres puissent simplement le décompresser et exécuter mon programme directement sans installer les dépendances. –

+0

vérifier ce lien http://python-guide-pt-br.readthedocs.io/fr/derniere/expédition/freezing/ – aliva

+0

Merci beaucoup –

0

L'installation d'un paquet python nous permet de l'utiliser n'importe où sur notre système. Si nous plaçons simplement le paquet dans le même répertoire que notre script, cela pourrait bien fonctionner, mais seulement pour les scripts de ce répertoire.

Certains paquets comptent également sur d'autres pour fonctionner correctement, et l'installation d'un paquet peut bien installer ces paquets pré-requis pour vous. Vous pourrez peut-être le faire manuellement, mais vous devrez les placer tous dans le même répertoire que votre script chaque fois que vous voudrez l'exécuter.

L'installation des paquets est donc la manière la plus simple de les utiliser.

Vous n'avez pas avez pour les installer, et dans certains cas vous ne les installeriez pas sur votre système; si vous aviez divisé votre code entre deux fichiers et importé un fichier au sommet de l'autre, par exemple.

+0

Est-il possible de copier un paquet avec ces paquets prérequis dans mon dossier de programme? Je veux déplacer toutes les bibliothèques requises et mon code vers un nouvel ordinateur avec seulement Cpython installé. –

+0

Cela dépend beaucoup de l'emballage.Votre meilleur pari est simplement de réinstaller les paquets sur votre nouvel ordinateur quand vous en avez besoin. –

0

En fait, vous n'avez pas vraiment besoin d'installer le paquet sur votre système. Mais si vous l'installez, vous pouvez utiliser ces paquets partout sur votre système. En outre, vous pouvez créer un fichier requirement.txt pour activer l'installation de tous les packages dont vous avez besoin sur un autre ordinateur. Vous pouvez consulter ce manuel. https://pip.pypa.io/en/stable/user_guide/#requirements-files