Python - 无法删除,然后创建文件夹

时间:2015-04-16 23:50:05

标签: python permissions mkdir spyder

我正在编写一个Python脚本来检查文件夹是否存在,如果存在则将其删除,然后重写它。

我可以创建一个目录,然后立即将其删除。

但是当我尝试删除一个目录,然后创建一个目录时,我收到以下错误:

"[Error 5] Access is denied: 'plots'"

虽然:

os.path.exists(dir)=false

也许Spyder以某种方式保留了记忆?请帮忙!

import os, shutil

dir = 'plots'
print "remove directory"
if os.path.exists(dir):
  shutil.rmtree(dir)
print os.path.exists(dir)

print "create directory"
os.mkdir(dir, 0755)
print os.path.exists(dir)

编辑:

输出首次运行(当“情节”不存在时)

删除目录

创建目录

输出第二次运行(当'情节确实存在时)

删除目录

创建目录

文件“C:/ Python27 / Spyder Workspace / JPL_impact_gnuplot / 07gnuplot / 02my_lammps_anal / anal_lammps.py”,第60行,in     os.mkdir(dir,0755) WindowsError:[错误5]访问被拒绝:'plots'“

所以,最后:    os.path.exists(DIR)=假 但令人惊讶地否认访问该目录!救命啊!

1 个答案:

答案 0 :(得分:0)

如果您的环境没有对目录的写入权限,则可能会发生这种情况。

您可以从命令行重新创建方案。

$ touch testfile
$ ls testfile
testfile
$ chmod 555 .
$ rm testfile
$ ls testfile
ls: cannot access testfile: No such file or directory
$ touch testfile
touch: cannot touch `testfile': Permission denied