Python 临时文件不可删除?

Python 临时文件不可删除?,python,file-permissions,delete-file,Python,File Permissions,Delete File,我已经使用tempfile.mkstemp()创建了临时文件,创建之后,我在路径中获得了文件的唯一路径,现在我想删除临时文件。我的代码如下 我已经访问过这个网站,但没有解决我的问题 代码 import os import tempfile path=tempfile.mkstemp('.png', 'bingo', 'C:\\Users\\MuhammadUsman\\Documents\\PythonScripts\\Project') os.unlink(path) 错误 Per

我已经使用
tempfile.mkstemp()
创建了临时文件,创建之后,我在
路径中获得了文件的唯一路径,现在我想删除临时文件。我的代码如下

我已经访问过这个网站,但没有解决我的问题

代码

import os
import tempfile

path=tempfile.mkstemp('.png', 'bingo',
    'C:\\Users\\MuhammadUsman\\Documents\\PythonScripts\\Project')
os.unlink(path)
错误

PermissionError:[WinError 32]进程无法访问该文件
因为它正被另一个进程使用:
'C:\\Users\\MuhammadUsman\\Documents\\PythonScripts\\Project\\bingois3q1b3u.png'

试试这个:这对我很有用

import os
import tempfile

fd,path=tempfile.mkstemp('.png', 'bingo', 'C:\\Users\\MuhammadUsman\\Documents\\Python Scripts\\Project')
os.close(fd)
os.unlink(path)

如果您只想获得唯一的名称,请尝试此操作。这比上面的解决方案好。不需要删除该文件。文件将自动删除

import os
import tempfile

path=tempfile.NamedTemporaryFile(dir='C:\\Users\\MuhammadUsman\\Documents\\Python Scripts\\Project',suffix='.png').name

告诉我为什么投票被否决。仔细阅读问题。我已经尝试了许多可能的组合。不要在没有阅读问题的情况下否决投票。如果通过
tempfile
模块创建临时文件,通常会自动删除它们自己,因此您可能不需要手动尝试。嗯,您的问题是否可能是您试图访问“MuhammadUsman”用户目录中的文件?您是否从其他帖子中复制并粘贴了该内容,而没有使用您的用户名更新路径?>临时文件通常会自动删除自己。。。说明:Python使用伪POSIX
\u open
函数会导致问题,因为Windows在使用
文件共享\u删除
模式时有点不一致。基本上,
mkstemp
unlink
使用的共享模式不一致,因此在关闭
mkstemp
的句柄之前,无法打开文件进行删除。