我知道package_data。但它适用于包内的只读数据。或者这个假设是错误的?如何安装共享或用户特定的可写数据?例如 Windows 上的 ProgramData 或 AppData。我也对 Linux 的解决方案感兴趣。
最佳答案
您的假设对我来说似乎是正确的(包数据应该是只读)。对于可写数据:要么让用户选择目标目录,要么根据通用约定选择一个目录。但这不可能在安装时发生。最好让您的库或应用程序在需要时检查这些共享目录和文件是否存在,如果不存在,则动态创建它们。
例如,一个非常常见的约定是 XDG Base Directory Specification 。这些库可以帮助根据此规范编写代码:
-
platformdirs
(首选、最新且维护良好) -
appdirs
(已过时) -
xdgappdirs
(已过时)
关于python - 如何使用 setuptools 安装可写共享和用户特定数据文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60158692/