È possibile eseguire direttamente i file egg Python in quanto è possibile eseguire file jar con Java?Come eseguire direttamente i file egg Python senza installarli?
Ad esempio, con Java si potrebbe dos qualcosa come:
$ java -jar jar-file
È possibile eseguire direttamente i file egg Python in quanto è possibile eseguire file jar con Java?Come eseguire direttamente i file egg Python senza installarli?
Ad esempio, con Java si potrebbe dos qualcosa come:
$ java -jar jar-file
Un python egg è un "un formato di distribuzione importabile single-file". Che di solito è un pacchetto python.
È possibile importare il pacchetto nell'uovo finché si conosce il nome ed è sul percorso.
È possibile eseguire un pacchetto utilizzando l'opzione "-m" e il nome del pacchetto.
Tuttavia, i pacchetti python generalmente non eseguono nulla quando vengono eseguiti e si può ricevere un errore. L'opzione -c può essere utilizzata per eseguire il codice. (Vedere http://docs.python.org/using/cmdline.html per i dettagli sulle opzioni della riga di comando)
> python -m sphinx
sphinx is a package and cannot be directly executed
> python -c "import <package in an egg>; <function>();"
> python -c "import sphinx; print sphinx.package_dir"
C:\Python26\lib\site-packages\sphinx-0.6.1-py2.6.egg\sphinx
Come di Python 2.6, è possibile utilizzare python some.egg
e sarà eseguito se include un modulo di nome __main__
.
Per le versioni precedenti di Python, è possibile utilizzare PYTHONPATH=some.egg python -m some module
e somemodule
dall'uovo verrà eseguito come modulo principale. (Nota: se siete su Windows, avresti bisogno di fare un separato SET PYTHONPATH=some.egg
.)
Ad esempio, se si vuole importare il modulo di schiuma che è disponibile come file di .egg:
egg_path='/home/shahid/suds_2.4.egg'
sys.path.append(egg_path)
import suds
#... rest of code
La domanda chiede come eseguire form dalla riga di comando - questo è come eseguire da dentro uno script python – Mark
@Mark dove lo dice? La domanda chiede "Come eseguire i file egg Python direttamente senza installarli?" Questa risposta è valida. – Adham
@Adham - l'esempio Java nella domanda proviene dalla riga di comando non in Java – Mark