Python 如何使用setuptools安装可写共享和用户特定的数据文件?

Python 如何使用setuptools安装可写共享和用户特定的数据文件?,python,linux,windows,setuptools,Python,Linux,Windows,Setuptools,我知道你的数据。但它用于包内的只读数据。还是这个假设是错误的?如何安装共享或用户特定的可写数据?例如,在Windows上创建ProgramData或AppData。我也对linux的解决方案感兴趣。您的假设对我来说似乎是正确的(包数据应该是只读的)。对于可写数据:让用户选择一个目标目录,或者根据通用约定选择一个目录。但这不能在安装时发生。最好让您的库或应用程序在需要时检查这些共享目录和文件是否存在,如果不存在,则立即创建它们 例如,一个非常常见的惯例是。这两个项目有助于根据本规范编写代码:

我知道你的数据。但它用于包内的只读数据。还是这个假设是错误的?如何安装共享或用户特定的可写数据?例如,在Windows上创建ProgramData或AppData。我也对linux的解决方案感兴趣。

您的假设对我来说似乎是正确的(包数据应该是只读的)。对于可写数据:让用户选择一个目标目录,或者根据通用约定选择一个目录。但这不能在安装时发生。最好让您的库或应用程序在需要时检查这些共享目录和文件是否存在,如果不存在,则立即创建它们

例如,一个非常常见的惯例是。这两个项目有助于根据本规范编写代码:


site\u data\u dir(“app”、“company”)的调用返回“/usr/share/gnome xorg/app”。不是我所期望的。我在ubuntu上。即使这会返回合理的路径,我仍然不知道如何将它集成到我的setup.py文件中。然后使用许多可用函数中的另一个。您期望的结果是什么?@MartinFehrs这绝对不应该是您的设置脚本的一部分。在库或应用程序的代码中,检查这些共享目录和/或文件是否存在,如果不存在,则创建它们。我期望的是/usr/share/app或/usr/local/share/app。当我调用site_data_dir(appname,appauthor,multipath=True)时,我会得到一个包含这两个路径的路径列表。但即使是这两条路也不是我想要的。我认为/var/lib/app应该是正确的目录,因为它是可写的。