2011-02-10 44 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或讓用戶指定目錄。