Skip to main content
 首页 » 编程设计

python之权限错误 : [Errno 1] Operation not permitted after macOS Catalina Update

2025年05月04日22pengyingh

安装 macOS 10.15 Catalina 后,在 Python 3.x 中进行简单文件和目录操作时出现以下错误:“PermissionError: [Errno 1] Operation not permitted”

有几个操作会触发此错误,包括使用 open(...,'rb')、listdir() 和 getcwd() 从 cwd 打开现有文件。

更新到 Catalina 并发现 Anaconda 和 Spyder 无法打开后,我了解到一些问题。我删除了 Anaconda 并使用 .sh 终端安装程序将其重新安装在/Users/myname/中。 Conda 和 Spyder 现在打开了,但是我仍然无法执行上面的操作。

这个有效:

os.chdir(basedir) 

这些不起作用并抛出上述错误:

os.getcwd() 
Traceback (most recent call last): 
 
  File "<ipython-input-3-a78b1fb2bab9>", line 1, in <module> 
    os.getcwd() 
 
PermissionError: [Errno 1] Operation not permitted 

os.listdir() 
Traceback (most recent call last): 
 
  File "<ipython-input-2-67fdccf289bf>", line 1, in <module> 
    os.listdir() 
 
PermissionError: [Errno 1] Operation not permitted 

f=open([pre-existing file],'rb') 

但是,这不会引发错误:

f=open('f1.txt','wb') 
f.close() 
f=open('f1.txt','rb') 

我已经尝试为 Anaconda 和 Spyder 设置完整磁盘访问权限。

请您参考如下方法:

转到系统偏好设置->安全和隐私。

在下图中,见标签 1

在左侧点击 Full Disk Access 见标签 2

现在点击左下角的锁图标,输入密码进行修改,见标签3

现在点击+号按钮,见标签4

从 Application -> Utilities 浏览终端应用

现在终端已获得许可。

完成。