我希望创建一个新目录,如果旧目录存在则删除它。我使用以下代码:
如果目录不存在,它会正常工作。 如果目录存在并且程序按照正常方式运行,则会出现错误。(WindowsError: [Error 5] Access is denied: 'my_directory') 但是,如果目录已经存在并且在调试模式下逐行执行程序,则也可以正常工作。我猜想shutil.rmtree()和makedirs()的调用之间需要一些时间。 有什么正确的代码可以避免出现错误吗?
if os.path.isdir(dir_name):
shutil.rmtree(dir_name)
os.makedirs(dir_name)
如果目录不存在,它会正常工作。 如果目录存在并且程序按照正常方式运行,则会出现错误。(WindowsError: [Error 5] Access is denied: 'my_directory') 但是,如果目录已经存在并且在调试模式下逐行执行程序,则也可以正常工作。我猜想shutil.rmtree()和makedirs()的调用之间需要一些时间。 有什么正确的代码可以避免出现错误吗?
chmod +r directory_name
,然后你应该就有权限了。 - BrockLee