python关闭文件并删除_python无法在关闭文件后删除该文件,“正被另一个进程使用”...

我试图在读取文件后将其删除,但获取“WindowsError:[Error 32]进程无法访问该文件,因为它正被另一个进程使用”file = open(self.filePath)

for line in file:

#do things

file.close()

os.remove(self.filePath) #throws error

os.rename(self.filePath, self.filePath + "old") #throws same error

有什么想法吗??

谢谢你!

更新:

我刚刚重新启动了我的(windows 7)框,启动了eclipse,将os.remove(“c:\ file\file.txt”)移到脚本的第一行,运行并得到了相同的错误。

更新2:

我使用windows资源管理器导航到文件。。第一次我不能删除它,它被“系统”使用。第二次尝试删除成功。文件不在了。现在当我跑的时候

os.remove(“c:\文件\文件.txt”)

WindowsError:[Error 32]进程无法访问该文件,因为另一个进程正在使用该文件:“c:\ file\file.txt”

然后我在windows资源管理器中查找,文件返回,为空。我可以在资源管理器中删除,然后当我运行要删除的脚本时,它抛出错误(并创建空文件)。知道这里会发生什么吗?

更新3:

我是个白痴。

我在初始化一个对象时打开文件

当我通过将“remove”移动到脚本顶部进行测试时,我应该将它放在顶部,而不是在创建对象之后

很抱歉耽误你的时间,我整个周末都在忙明天要交的东西,当它跑不动时我很惊慌

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值