PermissionError:[WinError 5]

时间:2016-04-30 14:12:06

标签: windows python-3.x

我正在尝试创建文件夹:

    import os

mypath = (r'C:\Program Files\my_folder')
if not os.path.isdir(mypath):
   os.makedirs(mypath)

我收到了错误:

mkdir(name, mode)
PermissionError: [WinError 5] Access is denied: 'C:\\Program Files\\my_folder'

1 个答案:

答案 0 :(得分:3)

该脚本无权写入Program Files文件夹。在Windows中,这是一个受非常高级别权限保护的文件夹,除安装程序外,通常不应写入该文件夹。

假设您需要存储特定于计算机的数据,请改用%PROGRAMDATA%环境变量。请注意,在Python中访问环境变量时,请勿使用%符号。

import os
mypath = os.path.join(os.getenv('programdata'), 'my_folder')
if not os.path.isdir(mypath):
    os.makedirs(mypath)

print (mypath)

将创建文件夹,并输出路径:

C:\ProgramData\my_folder

如果您需要为每个用户存储数据,请改用%APPDATA%环境变量。