gpt4 book ai didi

python - 如何使用 python 的 os.listdir 跳过不可访问的文件夹?

转载 作者:太空宇宙 更新时间:2023-11-03 15:25:45 25 4
gpt4 key购买 nike

我正在使用 python 和 javascript,但我在程序的特定部分遇到了问题。我需要向用户/客户端显示特定目录的内容。我使用 python 的 os.listdir 来做到这一点。此功能为我提供了目录的所有内容,甚至是无法访问的文件夹(我不想向用户/客户端显示)。

我给你举个例子。在浏览目录 C:\Users\MyUser 时,我通过 os.listdir 得到了这个:

In [18]: os.listdir('C:\Users\MyUser')

Out[18]: ['.eclipse', '.gimp-2.6', '.hdfview2.7', '.matplotlib', '.pylint.d', '.recently-used.xbel', '.xy', 'AppData', 'Application Data', 'Aptana Rubles', 'Contacts', 'Cookies', 'Defini\xe7\xf5es locais', 'Desktop', 'Documents', 'Downloads', 'Dropbox', 'Favorites', 'InstallAnywhere', 'Links', 'Menu Iniciar', 'Modelos', 'Music', 'My Documents', 'NetHood', 'OpenSignals Files', 'Os meus documentos', 'Pictures', 'PrintHood', 'Recent', 'Saved Games', 'SciTE.session', 'Searches', 'SendTo', 'Thumbs.db', 'Tracing', 'Videos', 'workspace', '_ipython']

我无法访问某些给定的文件夹。例如:应用程序数据、Cookie、Menu Iniciar(开始菜单的葡萄牙语)、Modelos、Os meus Documentos(我的文档的葡萄牙语)、NetHood、PrintHood 和 SendTo。如果我尝试使用 python 访问它们,我会收到此错误:

WindowsError             Traceback (most recent call last)

C:\Users\Plux\<ipython console> in <module>()

WindowsError: [Error 5] Denied Access: 'C:\\Users\\Plux\\Cookies/*.*'

所以,我的问题是,如何检测无法访问的文件夹并跳过它们以仅向用户显示他可以浏览的文件夹?

最佳答案

for el in os.listdir('C:\Users\MyUser'):
try:
(check if you can open, if so, you can show this folder)
except WindowsError:
pass

关于python - 如何使用 python 的 os.listdir 跳过不可访问的文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7318712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com