python - 在站点包中包含子目录文件时遇到问题
问题描述
我有一个开发包设置如下:
\polygonselector
\polygonselector
__init__.py
\notebooks
PolygonSelector.ipynb
.gitignore
LICENSE
MANIFEST.in
README.md
setup.py
我正在尝试密切遵循这些说明以及此问题和此问题中的信息,以便将 Jupyter 笔记本(notebooks
目录内)文件作为 python 包的一部分。然而,我一直未能成功。
MANIFEST.in 文件如下所示:
recursive-include notebooks *
我的文件中也有该include_package_data=True
行setup.py
。
这是存储库链接;我已经进行了十几个提交以尝试使其正常工作,包括尝试将notebooks
目录置于目录结构的顶部。
但是无论我做什么,当我从存储库 pip install 时,该notebooks
目录都不包含在Lib\site-packages directory
.
解决方案
如果您希望子目录notebooks
安装在Lib\site-packages
:
改变MANIFEST.in
:
recursive-include notebooks *
改变setup.py
:
# include_package_data=True,
package_data={'polygonselector': ['../notebooks/*']},
要安装到Lib\site-packages\polygonselector
:
git mv notebooks polygonselector
改变MANIFEST.in
:
recursive-include polygonselector/notebooks *
setup.py
对于这种情况是可以的。
推荐阅读
- gcc - 从源代码编译 glibc 在 avx 标头中失败:“无法将 x 类型的值转换为具有不同大小的向量类型 y”
- python - 在 tkinter 上清除和绘制 mathplot 图形
- css - 为什么我的 css 动画不在同一个地方?
- javascript - NETXJS:使用钩子将数据从页面传输到组件
- php - shell_exec 的问题,在某些 bash 命令中不能正常工作
- python - 处理 Pandas 中的异常值
- r - 选择有光泽和情节的点
- python - 调用 plot.show() 后绘图不显示
- bash - 使用'rename'递归重命名
- asp.net - 即使提供了凭据,WebClient.DownloadFile 也会返回登录页面