如何为为 pip 安装的 python 包启用 shell 命令行参数?

How can one enable a shell command line argument for a python package installed for pip?

那么对于 python 包,如何从 pip 安装包启用命令行参数?这是一个示例,用于名为 mrbob 的包:

$ pip install mrbob
$ mrbob DoSomethingFunction

如何为 python 包启用命令行选项和新的 shell 命令?

使用setuptools,定义一个console_script入口点:

setup(
    # other arguments here...
    entry_points={
        'console_scripts': [
            'mrbob = my_package.some_module:main_func',
        ]
    }
)

有关详细信息,请参阅 setuptools 文档中的 automatic script creation

使用distutils,使用scripts:

setup(...,
      scripts=['scripts/mrbob']
      )

有关详细信息,请参阅 distutils 文档中的 installing scripts

mrbob 将安装在 bin 目录中 例如在我的例子中是:

/Library/Frameworks/Python.framework/Versions/2.7/bin/

只要这在你的$PATH你就很好。