在3.3中,IOError
成为的别名OSError
,并且FileNotFoundError
是的子类OSError
。所以你可以尝试
except (OSError, IOError) as e:
...
这将产生一个相当宽的网络,并且您不能假设未经检查就不会出现“找不到文件”的异常e.errno
,但是它可能涵盖了您的用例。
PEP 3151详细讨论了更改的理由。
Python的“ open()”对“找不到文件”引发了不同的错误-如何处理这两个异常?
在3.3中,IOError
成为的别名OSError
,并且FileNotFoundError
是的子类OSError
。所以你可以尝试
except (OSError, IOError) as e:
...
这将产生一个相当宽的网络,并且您不能假设未经检查就不会出现“找不到文件”的异常e.errno
,但是它可能涵盖了您的用例。
PEP 3151详细讨论了更改的理由。