【问题标题】:Permission error 13 Python 3.5.2权限错误13 Python 3.5.2
【发布时间】:2017-07-07 17:27:12
【问题描述】:

我在 Windows 10 中使用 Python 脚本打开文件时遇到问题。

接下来我要做的是:

我以管理员身份打开我的脚本,在路由中创建一个新目录:

C:\ProgramData\New_folder

在该文件夹中,我创建了一个 txt 文件:

C:\ProgramData\New_folder\log.txt

之后程序将一些文本放入 log.txt 并完成。

现在我必须通常不以管理员身份打开脚本,并且当程序启动时,它会在以下代码行中启动权限错误 13。

dirLog = 'C:\ProgramData\New_folder\log.txt'
output = open(dirLog, "a")

我真的不知道这里发生了什么,因为我检查了创建的文件并且它具有读写权限。

第一次以管理员身份打开脚本至关重要,其余的则正常。

【问题讨论】:

    标签: python permissions


    【解决方案1】:

    这可能是由于文件夹设置的权限级别造成的。有一个可能的解决方案,但就该文件夹的权限而言,它可能会在未来导致安全问题。如果您有能力更改文件夹的权限级别,请尝试以下操作:导航到 ProgramData,右键单击文件夹,单击“属性”,然后点击顶部的“安全”选项卡,然后检查用户的权限。如果读取权限设置为关闭,请将其打开。否则,请尝试启用写入权限。

    【讨论】:

    • 我忘了说,我必须在几台机器上运行这个脚本,所以这样的解决方案是不可行的
    • 第二次打开该文件后,您希望对它做什么?
    • 这可能无法修复错误,但output = open(dirLog, "a")中的文件打开模式'a'只允许追加;不读书。尝试 a+(用于添加到文本文件并具有读取权限)或 w+(用于覆盖文本文件中的内容并具有读取权限)而不是 a.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-15
    • 2020-02-07
    • 1970-01-01
    • 2017-04-04
    • 2013-01-25
    • 1970-01-01
    相关资源
    最近更新 更多