Windows 7 如何解决python脚本中的系统权限错误?
我有这个简单的python脚本Windows 7 如何解决python脚本中的系统权限错误?,windows-7,python-3.3,Windows 7,Python 3.3,我有这个简单的python脚本 def scanFolder(path="."): foldersList = [] for name in os.listdir(path): if os.path.isdir(name): for innerName in os.listdir(name): if os.path.isdir(innerName): foldersLI
def scanFolder(path="."):
foldersList = []
for name in os.listdir(path):
if os.path.isdir(name):
for innerName in os.listdir(name):
if os.path.isdir(innerName):
foldersLIst.append(innerName)
运行此脚本时,我收到以下错误消息:
Traceback (most recent call last):
File "upNew.py", line 42, in <module>
File "upNew.py", line 18, in __init__
scanFolder(path=".")
File "upNew.py", line 24, in scanFolder
for innerName in os.listdir(name):
PermissionError: [WinError 5] Access is denied: 'System Volume Information\\*.*'
回溯(最近一次呼叫最后一次):
文件“upNew.py”,第42行,在
文件“upNew.py”,第18行,在_init中__
扫描文件夹(路径=“.”)
文件“upNew.py”,第24行,在scanFolder中
对于os.listdir(名称)中的innerName:
PermissionError:[WinError 5]访问被拒绝:“系统卷信息\\*.*”
我怎样才能解决这个问题?我在Windows 7上,使用的是python 3.3。默认情况下,Windows包含一些针对任何普通用户(包括管理员)进行保护的目录。除非您请求Windows授予访问这些目录的权限,否则您无法(使用任何程序)检查这些目录 因此,您可能只想完全跳过目录:
try:
dirs = os.listdir(name)
except PermissionError:
print("Permission denied:", name)
continue
for innerName in dirs:
...
啊,新的异常层次结构!说
除了PermissionError
比说除了IOError作为e:if e.errno!=…:raise
容易得多。