如何将docs目录包含在Python发行版中
我有一个Python项目,结构如下:
Clustering (project name)
clustering (package)
clustering.py and other modules
tests (sub-package)
test_clustering.py and other such files
docs/
bin/
我想把docs文件夹包含在我的发布包里,但我似乎做不到。有没有什么建议可以帮我实现这个?
我现在的setup.py文件是这样的:
from distutils.core import setup
setup(name='Clustering',
version='1.0',
description='desc',
author='A',
author_email='me@somemail.com',
packages=['clustering', 'clustering.tests'],
requires=['numpy', 'scipy'],
scripts=['bin/predict', 'bin/verify']
)
我尝试使用package_data选项,但没有成功把docs文件夹包含在发布包里。有没有其他常用的方法可以把文档包含在发布包里?
1 个回答
51
你需要创建一个叫做 MANIFEST.in 的文件,并在里面写一些简单的指令,告诉系统你想要包含哪些额外的文件(可以参考 MANIFEST.in 模板)。
举个例子(如果你想包含 docs 文件夹及其下面的所有文件):
include docs/*
或者,如果你想包含 docs 文件夹里的所有文件(包括子文件夹里的文件):
recursive-include docs *