使我的模块成为命令

Make my module a command

我很确定我在某个地方读过它,但我找不到任何关于它的文档了。

我做了一个 python (3) 模块,假设我把它命名为 addition。我有我的资源,我的测试,我的 setup.py 没问题。我可以从我系统的任何地方导入和使用它。没关系。

我现在想要的是定义一些命令以直接从命令行使用它,即: add 1 2 # call addition.add(1, 2)

它一定非常简单,但找不到这样的东西(我所有的 Google 结果都是关于如何创建 shell,即将 CLI 嵌入 Python。我想要的恰恰相反)

谢谢!

嗯,我终于找到了自动应答 (doc):

一个必须添加到setup.py:

setup( # other arguments here... entry_points={ 'console_scripts': [ 'foo = my_package.some_module:main_func', 'bar = other_module:some_func', ], 'gui_scripts': [ 'baz = my_package_gui:start_func', ] } )