Python,如果存在则打开写入,否则引发错误

abf*_*erm 5 python error-handling file

有没有我可以通过 open() 的选项,在尝试写入不存在的文件时会导致 IOerror?我正在使用 python 通过符号链接读取和写入块设备,如果链接丢失,我想引发错误而不是创建常规文件。我知道我可以添加一个检查来查看文件是否存在并手动引发错误,但如果存在,我更愿意使用内置的东西。

当前代码如下所示:

device = open(device_path, 'wb', 0)
device.write(data)
device.close()
Run Code Online (Sandbox Code Playgroud)

Ari*_*nom 3

是的。

open(path, 'r+b')
Run Code Online (Sandbox Code Playgroud)

指定“r”选项意味着该文件必须存在并且可以读取。指定“+”意味着您可以写入并且您将位于末尾。 https://docs.python.org/3/library/functions.html?#open