2009-08-12 17 views

Odpowiedz

17

python egg jest "format dystrybucji importable single-file". Który jest zwykle pakiet python.

Możesz zaimportować paczkę w jajku, o ile znasz jego nazwę i jest na twojej drodze.

Możesz wykonać pakiet, używając opcji "-m" i nazwy pakietu.

Jednak pakiety Pythona zazwyczaj nie robią nic po uruchomieniu i może pojawić się błąd. Opcja -c może być użyta do uruchomienia kodu. (Patrz http://docs.python.org/using/cmdline.html Szczegółowe informacje na temat opcji wiersza poleceń)

> 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 
14

Jak Pythona 2.6, można użyć python some.egg i zostanie ona wykonana, jeśli zawiera moduł o nazwie __main__.

Dla wcześniejszych wersji Pythona można użyć PYTHONPATH=some.egg python -m some module, a jajko somemodule zostanie uruchomione jako moduł główny. (Uwaga: jeśli jesteś na Windows, trzeba by zrobić oddzielną SET PYTHONPATH=some.egg).

4

Na przykład, jeśli chcesz zaimportować moduł piany, która jest dostępna jako plik .egg:

egg_path='/home/shahid/suds_2.4.egg' 

sys.path.append(egg_path) 

import suds 
#... rest of code 
+1

Pytanie pyta, jak uruchomić z wiersza poleceń - tak można uruchomić z poziomu skryptu pythonowego – Mark

+3

@Mark, gdzie to mówi? Pytanie brzmi: "Jak uruchamiać pliki Pythona bezpośrednio, bez ich instalowania?" Ta odpowiedź jest ważna. – Adham

+0

@Adham - przykład Java w pytaniu pochodzi z wiersza poleceń, a nie z Javy – Mark