相关疑难解决方法(0)

如何使用Python持久化磁盘临时文件?

我试图使用'tempfile'模块来操作和创建文本文件.文件准备好后,我想将其保存到磁盘.我认为这就像使用'shutil.copy'一样简单.但是,我得到'权限被拒绝'IOError:

>>> import tempfile, shutil
>>> f = tempfile.TemporaryFile(mode ='w+t')
>>> f.write('foo')
>>> shutil.copy(f.name, 'bar.txt')

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    shutil.copy(f.name, 'bar.txt')
  File "C:\Python25\lib\shutil.py", line 80, in copy
    copyfile(src, dst)
  File "C:\Python25\lib\shutil.py", line 46, in copyfile
    fsrc = open(src, 'rb')
IOError: [Errno 13] Permission denied: 'c:\\docume~1\\me\\locals~1\\temp\\tmpvqq3go'
>>> 
Run Code Online (Sandbox Code Playgroud)

这是不是在使用'tempfile'库时?有一个更好的方法吗?(也许我忽略了一些非常微不足道的事情)

python temporary-files

25
推荐指数
4
解决办法
3万
查看次数

python的shutil.copyfile()是原子的吗?

我正在编写一个python脚本,它在Linux上使用shutil.copyfile()复制文件.在复制过程中,其他进程可能正在尝试读取该文件.以下内容是否足以确保外部进程不会损坏文件?

os.unlink(dest)
shutil.copyfile(src, dest)
Run Code Online (Sandbox Code Playgroud)

也就是说,是shutil.copyfile()原子,以便其他进程在复制操作完成之前无法读取目标文件?

python linux shutil

10
推荐指数
2
解决办法
1587
查看次数

标签 统计

python ×2

linux ×1

shutil ×1

temporary-files ×1