2011-02-10 40 views
1

在为Fedora我的Linux Python应用程序的/ home /用户/文件我想用户的工作保存到/home/user/Documents/MyCoolApp/TheirGreatWork.txt保存在不同的地区/语言

但我不知道如何找到“Documents”文件夹中,如果用户不使用英语作为他们的默认语言。

什么是正确的方式来确定正确的路径,以便文件进入其“文档”文件夹。

编辑

这里是一个picture of a fedora dialog如果您更改语言环境......展示如何路径可以很容易被改变了上来。

回答

4

我会使用子进程模块获取命令xdg-user-dir DOCUMENTS的输出。例如:

import subprocess 
documents_dir = subprocess.check_output(["xdg-user-dir", "DOCUMENTS"]) 
print documents_dir # This is what you're looking for. 
+1

注意:subprocess.check_output需要Python 2.7。请参阅http://stackoverflow.com/questions/2924310/whats-a-good-equivalent-to-pythons-subprocess-check-call-that-returns-the-conte#2924457 – FabienAndre 2011-02-10 16:23:17

0

没有正确的方法,因为用户可能已经改变了他们的区域,这(幸运的是)不会重命名该目录。如果您需要一个固定的位置来存放由您的应用管理的文件,请使用~user/.MyCoolApp或让用户指定目录。