【问题标题】:How to include txt file within pip(pypi) module如何在 pip(pypi) 模块中包含 txt 文件
【发布时间】:2019-08-16 13:35:30
【问题描述】:

我创建了一个 pip 模块并将该模块安装在 jupyter notebook 中。

由于以下原因,有一个功能无法正常工作。

我创建了一个 pip 模块,在这个模块中我还有一个文本文件,其中包含工具箱所需的一些信息。

但是当我创建pypi模块时,这个txt文件没有转换成python轮子,现在安装后这个txt文件找不到了。

有没有办法在这个模块中包含一个txt文件,或者我需要把这个txt文件转换成另一种格式(.csv?)。

【问题讨论】:

标签: python module pip pypi


【解决方案1】:

您可能在setup.py 文件中调用setuptools.setup 来打包您的代码。设置决定哪些文件包含在轮子中的逻辑是a little complicated

在您的情况下,将.csv 的文件路径添加到package_data-list 就足够了:

from setuptools import setup

setup(
    ...                                      # "name" and stuff
    packages=['mypkg'],                      # root folder of your package
    package_dir={'mypkg': 'src/mypkg'},      # directory which contains the python code
    package_data={'mypkg': ['data/*.csv']},  # directory which contains your csvs
)

关于文档页面讨论的use MANIFEST, not package_data 参数,因为您使用wheel 来构建包,您应该没问题。 wheel 默认使用 bdist,与 package_data 配合使用效果很好。

【讨论】:

    猜你喜欢
    • 2017-05-28
    • 1970-01-01
    • 2019-12-03
    • 2016-01-30
    • 2015-05-27
    • 1970-01-01
    • 2019-09-06
    • 2019-10-01
    相关资源
    最近更新 更多