提问者:小点点

在Python中写入文件时权限被拒绝错误


我想创建一个文件,并在python中写入一些整数数据。例如,我有一个变量abc=3,我试图将其写入一个文件(不存在,我假设python将自己创建它):

fout = open("newfile.dat", "w")
fout.write(abc)

首先,python将创建一个新文件。dat本身?其次,它给了我这个错误:

IOError: [Errno 13] Permission denied: 'newfile.dat'

这里怎么了?


共3个答案

匿名用户

如果文件在您的计算机上仍然打开,请关闭该文件,然后尝试运行python代码。我希望它能起作用

匿名用户

当您尝试创建与目录同名的文件时,也会发生这种情况:

import os

conflict = 'conflict'

# Create a directory with a given name
try: 
    os.makedirs(conflict)
except OSError:
    if not os.path.isdir(conflict):
        raise

# Attempt to create a file with the same name
file = open(conflict, 'w+')

结果:

IOError: [Errno 13] Permission denied: 'conflict'

匿名用户

我在使用cmd(windows命令行)时也遇到过类似的问题

C:\Windows\System32> "G:\my folder\myProgram.py"

在python文件中的什么位置

myfile = open('myOutput.txt', 'w')

错误是当您不使用完整路径时,python将使用您的当前目录,并且因为cmd上的默认目录是

C:\Windows\System32 

这行不通,因为它似乎是写保护的,需要许可

相反,您应该使用完整路径,例如:

myfile = open('G:\my folder\myOutput.txt', 'w')