此处的 python 文档没有提到在调用file.write()
.
这是否意味着该函数不会引发任何异常?file.write()
例如,在没有磁盘空间的情况下会有什么行为?
当文件操作因 I/O 相关原因而失败时,会引发异常IOError。这包括由于某种原因未定义操作的情况,例如
seek()
在 tty 设备上或写入打开以供读取的文件。
它没有提到每个方法的异常的原因是它对于由 IO 相关原因引起的IOError
每个方法错误都是相同的异常 () 。file
可以根据错误号找出IOError的类型,可以提取如下:
try:
f = open("nosuchfile.txt")
except IOError as e:
print e.errno
这些错误编号来自操作系统,而不是 Python。在上述情况下,它会打印2
,No such file or directory
错误 2.No space left on device
通常是错误 28,尽管它可能取决于操作系统。