纯Python模块发布setup脚本编写示例
如果你正准备发布几个模块,特别当它们并不是只在一个特定的包内,你可以在setup脚本中py_modules参数里单独地指定他们。
例1. 发布中仅含一个模块
在这个最简单的例子中,你有两个文件要考虑:一个setup脚本和你将要发布的单个模块foo.py
,文件结构如下:
<root>/ setup.py foo.py
(在本节中,<root>
指发布的根目录。)描述上述情况的一个最小的setup脚本将是:
from distutils.core import setup setup(name='foo', version='1.0', py_modules=['foo'], )
注意发布名字是独立于name参数的,并且没有规定说发布名称必须和发布中单独模块名相同(尽管这可能是一个好的习惯)。然而,发布名被用来产生文件名,所以你应该使用字母,数字,下划线和连字符。
例2. 发布中含多个模块
因为py_modules是一个list,你当然可以指定多个模块,比如,你想发布foo和bar模块,你的文件结构可能会是这样:
<root>/ setup.py foo.py bar.py
并且setup脚本可能会是
from distutils.core import setup setup(name='foobar', version='1.0', py_modules=['foo', 'bar'], )
当然,你也可以将模块源文件放到其他目录,但是如果你很多模块需要这样做,你最好是用包来指定这些模块,而不是一个一个地列举它们。