如何用python跳过不可访问的文件夹操作系统列表目录?

2024-09-30 03:22:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我在使用python和javascript,程序的某个特定部分出现了问题。我需要向用户/客户机显示特定目录的内容。我用python的操作系统列表目录. 这个函数提供目录的所有内容,甚至是不可访问的文件夹(我不想向用户/客户机显示)。在

我给你举个例子。在浏览目录C:\Users\MyUser时,我通过操作系统列表目录公司名称:

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']

我无法访问某些给定的文件夹。例如:应用程序数据、Cookies、Menu Iniciar(葡萄牙语表示开始菜单)、Modelos、Os meus Documentos(葡萄牙语表示我的文档)、NetHood、PrintHood和SendTo。如果我试图用python访问它们,就会出现以下错误:

^{pr2}$

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


Tags: 用户目录文件夹内容列表客户机osusers
2条回答
for myFile in myList():
    if not os.access(myFile, os.R_OK):
        myList.pop(myList.index(myFile))

列表只应包括路径。否则,需要根据属性修改循环。在

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

相关问题 更多 >

    热门问题