如何在要在 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/