J'ai un seul fichier Python qui est censé recevoir un tas d'entrées pendant la commande.
Par exemple: python script.py "string_1" "string_2"
J'ai aussi un tas de dépendances, y compris des pandas, datetime et même Python3.
Je veux empaqueter tout ce code de manière à ce que n'importe qui puisse installer le paquet avec les dépendances aussi (dans un répertoire ou plus) et ensuite appeler simplement le script / module: de la manière ci-dessus. Sans avoir à entrer dans un interpréteur Python.
J'ai essayé d'utiliser la ressource python-packaging , mais avec cela je devrais entrer dans l'interprète, non?
3 Réponses :
J'ai trouvé un bon article aujourd'hui qui explique assez bien la procédure: https://medium.com/dreamcatcher-its-blog/making-an-stand-alone-executable-from-a-python-script-using- pyinstaller-d1df9170e263
pyinstaller --onefile
est le tl; dr sous Linux. Sous Windows, vous avez également besoin de py32exe
Jetez un œil à pex ( https://pex.readthedocs.io/en/stable/ ). Il regroupe vos scripts, fichiers, dépendances, etc. Python dans un seul exécutable. Vous avez toujours besoin de l'interpréteur python installé, mais il inclut tout le reste.
Si vous pouvez compter sur une installation de base de python déjà présente.
Ensuite, il vaut la peine de regarder le module zipapp de Python introduit dans Python3.5 https://docs.python.org/3/library/zipapp.html#creating-standalone-applications-with-zipapp Pour des informations générales PEP441 https://www.python.org/dev/peps/pep-0441/
Il existe également un projet appelé Shiv qui ajoute des capacités supplémentaires au module zipapp intégré dans python3.5
Pensez à utiliser un outil tel que py2exe (pour les déploiements Windows). L'installation automatique des packages Python n'est pas un problème trivial.
Copie possible de Comment faire un exécutable autonome de script Python à exécuter sans AUCUNE dépendance?