You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyCharm Python3.6下创建.txt文件后无法直接删除的问题求助

解决创建文件后无法立即删除的问题

嘿,这问题我太熟了!你遇到的情况是因为文件创建后还被Python的文件对象死死占用着,哪怕用了flush()也没用——因为它只是把缓冲区内容刷到磁盘,根本没释放文件句柄,操作系统会锁定这个文件,导致你的程序没法直接删掉它。

最靠谱的解决方案:用with语句管理文件

Python里处理文件最推荐的就是with上下文管理器,它会自动帮你关闭文件、释放资源,完全不用手动操心:

import os
temp = input("Please Enter File Name to create: ")
# with块结束后会自动调用close(),彻底释放文件
with open(temp,"w+") as FileName:
    print("File Created!\n")
temp = input("Please Enter File Name to delete: ")
os.remove(temp)
print("File Removed!")

手动处理的替代方案

如果你不想用with,那得确保彻底关闭文件并移除对象引用:

import os
temp = input("Please Enter File Name to create: ")
FileName = open(temp,"w+")
print("File Created!\n")
# 先关闭文件句柄
FileName.close()
# 手动删除对象引用,让系统尽快释放文件锁
del FileName
temp = input("Please Enter File Name to delete: ")
os.remove(temp)
print("File Removed!")

简单说下为啥之前的操作没用:flush()只是把内存里的内容写到硬盘,但文件还是处于“打开”状态,操作系统不允许删除正在被使用的文件。只有当文件句柄被完全释放后,才能顺利删除。

内容的提问来源于stack exchange,提问作者user9119777

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:39:20