在Python中查找系统文件夹位置

11 投票
5 回答
9787 浏览
提问于 2025-04-15 18:01

我想用Python 3.1找到系统文件夹的位置。例如,“我的文档”对应的是“C:\Documents and Settings\User\My Documents”,“程序文件”对应的是“C:\Program Files”等等。

5 个回答

4

要获取“我的文档”文件夹,你可以使用以下代码:

from win32com.shell import shell
df = shell.SHGetDesktopFolder()
pidl = df.ParseDisplayName(0, None,  
    "::{450d8fba-ad25-11d0-98a8-0800361b1103}")[1]
mydocs = shell.SHGetPathFromIDList(pidl)
print mydocs

更多信息可以在这里找到。

我不太确定“程序文件”对应的代码是什么,但希望这些信息能帮你入门。

7

在Windows 7系统中,我可以使用以下环境变量来访问我需要的文件夹:

>>> import os
>>> os.environ['USERPROFILE']
'C:\\Users\\digginc'
>>> os.environ['PROGRAMFILES']
'C:\\Program Files'
9

我发现了一种稍微不同的方法。这种方法可以告诉你各种系统文件夹的位置,而且用的是普通的词,而不是那些复杂的CLSID。

import win32com.client
objShell = win32com.client.Dispatch("WScript.Shell")
allUserDocs = objShell.SpecialFolders("AllUsersDesktop")
print allUserDocs

其他可用的文件夹有: 所有用户桌面、所有用户开始菜单、所有用户程序、所有用户启动项、桌面、收藏夹、字体、我的文档、网络邻居、打印邻居、最近使用、发送到、开始菜单、启动项和模板。

撰写回答