簡體   English   中英

包含setup.py的數據文件

[英]Including data files with setup.py

我在setup.py腳本中包含數據文件時遇到問題。 我的包裝設置如下:

my_package/
    setup.py
    MANIFEST.in

    my_package/
        __init__.py
        access_data.py

        data_files/
            my_data_file.csv

我想在安裝時包含my_data_file.csv文件,以便access_data.py可以讀取access_data.py 為此,我在setuptools使用了package_data關鍵字:

setup(...,
      packages=['my_package'],
      package_data={'my_package': ['./my_package/data_files/my_data_file.csv']},
      include_package_data=True
      )

我還在MANIFEST.in包含了該文件:

recursive-include my_package/data_files *

setup.py似乎運行正常,不會拋出任何錯誤。 但是,當我導入包時,我得到一個文件未找到錯誤,因為缺少my_data_file.csv 我已經嘗試引用其他堆棧溢出問題(特別是這一個 ),但無法弄清楚我做錯了什么。 如何讓setup.py包含必要的數據文件?

如果它在setup.pypackage_data (正確)中列出,則不需要將其包含在MANIFEST.in (因為它將自動包含在內)

在您的情況下,錯誤在於package_data行,路徑相對於命名空間的根

在你的情況下,它應該是:

package_data={'my_package': ['data_files/my_data_file.csv']},

另請注意,包數據中的鍵是虛線模塊路徑(但這與此玩具案例並不相關)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM