我使用tempfile.mkstemp()
创建了临时文件,在创建之后,我在path
内获得了文件的唯一路径,现在我想删除临时文件。我的代码如下。
我已经访问了此WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'new.dat' 但未解决我的问题。
代码
import os
import tempfile
path=tempfile.mkstemp('.png', 'bingo',
'C:\\Users\\MuhammadUsman\\Documents\\PythonScripts\\Project')
os.unlink(path)
错误
PermissionError: [WinError 32] The process cannot access the file
because it is being used by another process:
'C:\\Users\\MuhammadUsman\\Documents\\PythonScripts\\Project\\bingois3q1b3u.png'
答案 0 :(得分:2)
试试这个:这对我有用。
import os
import tempfile
fd,path=tempfile.mkstemp('.png', 'bingo', 'C:\\Users\\MuhammadUsman\\Documents\\Python Scripts\\Project')
os.close(fd)
os.unlink(path)
答案 1 :(得分:1)
如果您只想获得唯一名称,请尝试此操作。这比上层解决方案更好。无需删除该文件。文件会自动删除。
import os
import tempfile
path=tempfile.NamedTemporaryFile(dir='C:\\Users\\MuhammadUsman\\Documents\\Python Scripts\\Project',suffix='.png').name