是否可以像使用 Java 运行 jar 文件一样直接运行 Python Egg 文件?
例如,使用 Java,您可能会执行以下操作:
$ java -jar jar-file
python egg是一种“单文件可导入分发格式”。这通常是一个 python 包。
只要您知道它的名称并且它在您的路径中,您就可以将包导入到 egg 中。
您可以使用“-m”选项和包名来执行包。
但是,python 包在执行时通常不会做任何事情,并且您可能会收到错误消息。-c 选项可用于运行代码。(有关命令行选项的详细信息,请参见http://docs.python.org/using/cmdline.html )
> 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
从 Python 2.6 开始,您可以使用python some.egg
并且如果它包含名为__main__
.
对于早期版本的 Python,您可以使用PYTHONPATH=some.egg python -m some module
,并且somemodule
从 egg 将作为主模块运行。(注意:如果你在 Windows 上,你需要做一个单独的SET PYTHONPATH=some.egg
.)
例如,如果您想导入 .egg 文件形式的 suds 模块:
egg_path='/home/shahid/suds_2.4.egg'
sys.path.append(egg_path)
import suds
#... rest of code
Python Egg file direct execution steps
Suppose if you have egg file and driver file to run through below command.
PYTHONPATH=eggfilename.egg python driverfile.py
above command for without install egg file with python code.