Ins*_*rov 4 python pkg-resources
使用这种一般结构:
setup.py
/package
__init__.py
project.py
/data
client.log
Run Code Online (Sandbox Code Playgroud)
我有一个脚本可以保存名称列表client.log,所以每次我需要访问它或运行模块时,我都不必重新初始化该列表.在使用之前设置此结构之前pkg_resources,我曾open('.../data/client.log', 'w')使用显式路径更新日志,但这不再起作用.
有没有办法在模块中编辑数据文件?或者有更好的方法来保存此列表吗?
不,pkg_resources是用于读取包中的资源.您不能使用它来写日志文件,因为它是日志文件的错误位置.加载库的用户通常不应该可以写入包目录.此外,您的包实际上可能在ZIP文件中.
您应该将日志存储在日志目录中.在哪里放置取决于很多东西,最大的问题是您的操作系统,但如果它是系统软件或用户软件.