【发布时间】:2020-02-24 03:48:18
【问题描述】:
您好,我正在尝试编写一个像这样的原子写入函数...
with tempfile.NamedTemporaryFile(mode= "w", dir= target_directory) as f:
#perform file writing operation
os.replace(f.name, target_file_name)
我正在努力找出第 3 行中的最佳操作是什么。我应该使用 os.replace()、os.rename() 还是应该使用 os.关联()?
os.link() 是否使用更多内存?每个的好处是什么,它们都是原子的?
【问题讨论】:
-
这不仅是特定于平台的,还取决于底层文件系统。我怀疑python会在这里给出任何硬性保证。有些配置根本不允许原子移动(例如 FAT32 上的 Windows,尽管我怀疑是否还有很多这样的语句)
标签: python