【问题标题】:Errno 13 Permission denied when reading large text file [closed]Errno 13 读取大文本文件时权限被拒绝[关闭]
【发布时间】:2021-07-21 10:58:03
【问题描述】:

我正在使用file.readline() 从一个大文本文件中读取数据。一开始,文件被正确读取,直到特定行(每次我运行此代码时,它都会停在这一行)。进程将结束,然后报告此错误:

File "E:/Det_devided_2/analysis.py", line 286, in <module>
  caculate_neg(path, 429496730, part_id)
File "E:/Det_devided_2/analysis.py", line 229, in caculate_neg
  det_line = file.readline() 
PermissionError: [Errno 13] Permission denied

附: 文本文件在移动硬盘中。

【问题讨论】:

  • 这意味着您的脚本没有读取文件或访问设备的权限(并且可能与文件的大小无关——您可以轻松检查)。
  • 以超级用户身份运行脚本
  • 感谢您的回答,我会尽快尝试。但是,奇怪的是,一开始文本文件读取成功,然后读取了大约800000行之后,出现了这个错误。如果我没有权限,不应该一开始就失败吗?
  • 是的,它从一开始就失败了。

标签: python python-3.x text


【解决方案1】:

PermsionDenied 错误通常是由于用户无法获得适当的权限,例如读/写受保护的文件。


在 Windows 上:

  1. 以管理员身份打开 cmd(或 Powershell):

  2. 运行:python &lt;yourscript&gt;.py


在 Linux 上:

您可以使用sudo 以管理员身份运行单个命令,但管理员有权使用sudo

sudo python &lt;yourscript&gt;.py



其他可能性:

外部设备上的权限被拒绝错误也可能是由于设备故障或设备可能被加密

【讨论】:

  • 非常感谢您的回答!在 CMD 中运行解决了这个问题。
  • @KKK.Price 没问题,我很高兴它有帮助:)
  • ? 然后在第 70000000 行左右再次出现错误。这太奇怪了。
  • 您是否以管理员身份运行它
  • 您使用的是外置硬盘还是闪存盘
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-20
  • 2011-06-11
  • 2014-07-15
相关资源
最近更新 更多