errno — Systemfehlercodes

Dieses Modul stellt den Zugriff auf symbolische Fehlercodes für die Ausnahme OSError bereit, zusammen mit dem Dictionary errorcode, das numerische Codes wieder auf ihre symbolischen Namen abbildet.

Konstanten

Die folgenden Fehlercodes basieren auf dem ANSI-C-/POSIX-Standard; jeder ist eine ganze Zahl, deren symbolischer Name mit E beginnt. Dies sind die auf der OpenMV Cam bereitgestellten Codes. Auf einen Fehlercode wird üblicherweise über exc.errno zugegriffen, wobei exc eine Instanz von OSError ist. Anwendungsbeispiel:

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

Operation nicht erlaubt.

errno.ENOENT: int

Datei oder Verzeichnis nicht vorhanden.

errno.EIO: int

E/A-Fehler.

errno.EBADF: int

Ungültiger Dateideskriptor.

errno.EAGAIN: int

Ressource vorübergehend nicht verfügbar. Wird von einer nicht-blockierenden Operation (z. B. einem Socket-Lese-/Schreibvorgang) zurückgegeben, die andernfalls blockieren würde.

errno.ENOMEM: int

Kein Speicher mehr verfügbar.

errno.EACCES: int

Zugriff verweigert.

errno.EEXIST: int

Datei oder Verzeichnis existiert bereits.

errno.ENODEV: int

Kein solches Gerät vorhanden.

errno.EISDIR: int

Ist ein Verzeichnis (eine Operation, die eine Datei erfordert, wurde auf ein Verzeichnis angewendet).

errno.EINVAL: int

Ungültiges Argument.

errno.EOPNOTSUPP: int

Operation auf dem Socket oder Gerät nicht unterstützt.

errno.EADDRINUSE: int

Adresse wird bereits verwendet.

errno.ECONNABORTED: int

Verbindung abgebrochen.

errno.ECONNRESET: int

Verbindung von der Gegenstelle zurückgesetzt.

errno.ENOBUFS: int

Kein Pufferspeicher verfügbar.

errno.ENOTCONN: int

Socket ist nicht verbunden.

errno.ETIMEDOUT: int

Zeitüberschreitung bei der Verbindung oder Operation.

errno.ECONNREFUSED: int

Verbindung abgelehnt.

errno.EHOSTUNREACH: int

Host ist nicht erreichbar (keine Route zum Host).

errno.EALREADY: int

Operation bereits in Bearbeitung.

errno.EINPROGRESS: int

Operation jetzt in Bearbeitung (z. B. ein nicht-blockierendes connect()).

errno.errorcode: dict[int, str]

Dictionary, das jeden numerischen Fehlercode auf einen String mit seinem symbolischen Namen abbildet:

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