python - python包中不包含属性文件(ini文件)

标签 python package pip

如何在要在 Linux 和 Windows 上使用的 python 包中包含属性/ini 文件?

我尝试通过将 ini 文件放在项目文件夹下来创建一个 python 包,以便我可以使用如下代码访问它:

File = open("props.ini", 'r')

然后我将我的包部署到一个 .tar.gz 文件中:

$ python setup.py sdist

然后我安装包(使用 Linux 机器):

$ sudo pip install package_name.tar.gz

我在这里获取我的 .py 文件:

/usr/local/lib/python2.7/dist-packages/package_name/*.py

我在这里获取我的脚本来打开程序:

/usr/local/bin/myScript

但我没有得到我的 .ini 文件。

最佳答案

一种方法是将配置文件放在源代码下的目录中。

例如,如果您的源代码在src 目录下,您可以在src/config 下添加您的配置文件。之后,对于 src 目录中的任何代码,您都可以使用以下方式访问配置文件:

config_filename = os.path.join(os.path.dirname(os.path.realpath(__file__)), 
                               'config', <filename>)

为了在分发代码时保持相同的目录结构,setup.py 中的setup 函数需要使用package_data< 了解这些新文件参数:

setup(
...
package_data={'src': ['config/*',]},
...
)

关于python - python包中不包含属性文件(ini文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8601686/

相关文章:

python - 皮威 ORM : select function()

go - 使用子包/子包构建包结构

android - 如何解决明显错误?

python - 在文件 :///home/ubuntu/sample/test-1. 0.tar.gz 的 test==1.0 的安装记录中找不到 .egg-info 目录

python - 'pip uninstall sklearn scikit-learn'这两条命令都卡住了,如何正确删除?

python - 选择要从 Excel 读入 pandas 数据框的行号

python - python中的多级字典

python - 如何避免使用 pip 安装 tarball 时出现文件未找到错误?

python - threading.Thread 如何在 Python 中产生剩余的量子?

r - 创建新 R 包时如何正确组织小插图和 inst 文件夹