目录
OS 异常
1、exception BlockingIOError
2、characters_written
3、exception ChildProcessError
4、exception ConnectionError
5、exception BrokenPipeError
6、exception ConnectionAbortedError
7、exception ConnectionRefusedError
8、exception ConnectionResetError
9、exception FileExistsError
10、exception FileNotFoundError
11、exception InterruptedError
12、exception IsADirectoryError
13、exception NotADirectoryError
15、exception PermissionError
16、exception ProcessLookupError
17、exception TimeoutError
OS 异常下列异常均为OSError 的子类,它们将根据系统错误代码被引发。
1、exceptionBlockingIOError
当一个操作会被某个设置为非阻塞操作的对象(例如套接字)所阻塞时将被引发。 对应于 errno
EAGAIN
, EALREADY
, EWOULDBLOCK
和 EINPROGRESS
。
除了 OSError 已有的属性,BlockingIOError
还有一个额外属性:
2、characters_written
一个整数,表示在被阻塞前已写入到流的字符数。 当使用来自 io 模块的带缓冲 I/O 类时此属性可用。
3、exceptionChildProcessError
当一个子进程上的操作失败时将被引发。 对应于 errno
ECHILD
。
ConnectionError
与连接相关问题的基类。
其子类有BrokenPipeError
, ConnectionAbortedError,
ConnectionRefusedError
和 ConnectionResetError
。
BrokenPipeError
ConnectionError
的子类,当试图写入另一端已被关闭的管道,或是试图写入已关闭写入的套接字时将被引发。 对应于 errno
EPIPE
和 ESHUTDOWN
。
ConnectionAbortedError
ConnectionError
的子类,当连接尝试被对端中止时将被引发。 对应于 errno
ECONNABORTED
。
ConnectionRefusedError
ConnectionError
的子类,当连接尝试被对端拒绝时将被引发。 对应于 errno
ECONNREFUSED
。
ConnectionResetError
ConnectionError
的子类,当连接被对端重置时将被引发。 对应于 errno
ECONNRESET
。
FileExistsError
当试图创建一个已存在的文件或目录时将被引发。 对应于 errno
EEXIST
。
FileNotFoundError
当所请求的文件或目录不存在时将被引发。 对应于 errno
ENOENT
。
InterruptedError
当系统调用被输入信号中断时将被引发。 对应于 errno
EINTR。
在 3.5 版更改: 当系统调用被某个信号中断时,Python 现在会重试系统调用,除非该信号的处理程序引发了其它异常 而不是引发 InterruptedError 。
12、exceptionIsADirectoryError
当请求对一个目录执行文件操作 (例如 os.remove()) 将被引发。 对应于 errno
EISDIR
。
NotADirectoryError
当请求对一个非目录对象执行目录操作 (例如 os.listdir() ) 时将被引发。 对应于 errno
ENOTDIR
。
PermissionError
当在没有足够操作权限的情况下试图执行某个操作时将被引发 —— 例如缺少文件系统权限。 对应于 errno
EACCES
和 EPERM
。
ProcessLookupError
当给定的进程不存在时将被引发。 对应于 errno
ESRCH
。
TimeoutError
当一个系统函数发生系统级超时的情况下将被引发。 对应于 errno
ETIMEDOUT
。