errno --- システムエラーコード

このモジュールは、OSError 例外のための記号的なエラーコードへのアクセスを提供します。あわせて、数値コードを記号名にマッピングし直す errorcode 辞書も提供します。

定数

以下のエラーコードは ANSI C / POSIX 標準に基づいており、それぞれ記号名が E で始まる整数です。これらは OpenMV Cam で提供されるコードです。エラーコードは通常 exc.errno としてアクセスされます。ここで excOSError のインスタンスです。使用例:

try:
    os.mkdir("my_dir")
except OSError as exc:
    if exc.errno == errno.EEXIST:
        print("Directory already exists")
errno.EPERM: int

操作が許可されていません。

errno.ENOENT: int

そのようなファイルやディレクトリはありません。

errno.EIO: int

I/O エラー。

errno.EBADF: int

不正なファイルディスクリプタ。

errno.EAGAIN: int

リソースが一時的に利用できません。ブロックするはずのノンブロッキング操作(たとえばソケットの読み書き)によって返されます。

errno.ENOMEM: int

メモリ不足。

errno.EACCES: int

アクセスが拒否されました。

errno.EEXIST: int

ファイルまたはディレクトリがすでに存在します。

errno.ENODEV: int

そのようなデバイスはありません。

errno.EISDIR: int

ディレクトリです(ファイルを必要とする操作がディレクトリに適用されました)。

errno.EINVAL: int

不正な引数。

errno.EOPNOTSUPP: int

ソケットまたはデバイスでサポートされていない操作。

errno.EADDRINUSE: int

アドレスはすでに使用中です。

errno.ECONNABORTED: int

接続が中断されました。

errno.ECONNRESET: int

接続がピアによってリセットされました。

errno.ENOBUFS: int

利用可能なバッファ領域がありません。

errno.ENOTCONN: int

ソケットが接続されていません。

errno.ETIMEDOUT: int

接続または操作がタイムアウトしました。

errno.ECONNREFUSED: int

接続が拒否されました。

errno.EHOSTUNREACH: int

ホストに到達できません(ホストへのルートがありません)。

errno.EALREADY: int

操作はすでに進行中です。

errno.EINPROGRESS: int

操作は現在進行中です(たとえばノンブロッキングの connect())。

errno.errorcode: dict[int, str]

各数値エラーコードをその記号名の文字列にマッピングする辞書:

>>> print(errno.errorcode[errno.EEXIST])
EEXIST