Python - 处理对同一文件的多次写访问的最简单的解决方案

时间:2017-05-22 18:29:48

标签: python file

我有多个python脚本,必须在同一个文件上写文本。显然,我想保证数据一致且不重叠。 哪种方法最简单(也是最有效)? 我不需要跨平台解决方案。

谢谢

3 个答案:

答案 0 :(得分:2)

假设您使用的是* nix平台,则可以使用fcntl创建文件锁定。平台也独立filelock,但我自己从未使用过它。

使用 fcntl ,您可以在文件打开后立即将其锁定,然后写入,然后释放锁定。

答案 1 :(得分:0)

使用文件锁模版。

from filelock import FileLock

with FileLock("mySharedFile.txt"):
    # your code
    print("Locked.")

答案 2 :(得分:-1)

open(*filename,mode*)行中,只需使用as模式。这将使它添加你写的行而不是删除旧行