创建包含数据文件的setup.py

时间:2017-08-01 14:22:28

标签: python-3.x setuptools

我有一个包含以下树的python3代码。

ptbl/
├── dialogue.py
├── elem_H.py
├── elems.db
├── __init__.py
├── __init__.py.in
├── __main__.py
├── main.py
├── menu.py
├── __pycache__
├── retrive.py
└── veggards.py
data/
├── icons
├── Makefile
├── Makefile.am
├── Makefile.in
├── menubar.ui
├── org.example.ptbl.gschema.valid
├── org.example.ptbl.gschema.xml
├── ptbl.desktop
├── ptbl.desktop.in
└── ui
bin/
├── ptbl
└── ptbl.in

我从未使用过setup.py,而且从tree,您可以看到我正在使用autotools

我已经生成了一个基本的setup.py,但它没有包含数据,bin或ptbl / elems.db中的任何内容:

我的steup.py是:

from setuptools import setup, find_packages
setup(
  name="ptbl",
  version="0.4",
  packages=find_packages(),
  package_data={
    'ptbl': ["data/"],
  },
)

正在制作dist:

.
├── PKG-INFO
├── ptbl
│   ├── dialogue.py
│   ├── elem_H.py
│   ├── __init__.py
│   ├── __main__.py
│   ├── main.py
│   ├── menu.py
│   ├── retrive.py
│   └── veggards.py
├── ptbl.egg-info
│   ├── dependency_links.txt
│   ├── PKG-INFO
│   ├── SOURCES.txt
│   └── top_level.txt
├── setup.cfg
└── setup.py

我应该怎么做才能包含其他文件? 我在这里检查了其他类似的问题,例如this 但无法解决问题。

1 个答案:

答案 0 :(得分:1)

列出文件或模式:

package_data={
    'ptbl': ["bin/*", "data/*"],
},