Skip to content

Die pass-Anweisung in Python

Python

In Python bewirkt die pass-Anweisung nichts. Es WIRD verwendet, wenn SIE etwas syntaktisch schreiben müssen, aber nichts tun müssen.

Dieser Artikel zunächst genau, was pass in Python bedeutet.

  • Was bedeutet die pass-Anweisung in Python
  • Unterschied zwischen Pass und Continue

Nach diesem Artikel sterben Verwendung der Pass-Anweisung mit konkreten Beispielen.

  • Definieren Sie eine leere Funktion und Klasse mit pass
  • Erstellen Sie mit einer leeren Datei
  • Stellen Sie klar, dass nichts getan wird in if … elif … else … with pass
  • Bei der Ausnahmebehandlung nichts tun (= Ausnahmen ausgeschlossen) mit pass

Was bedeutet die pass-Anweisung in Python

Wie SIE in der offiziellen Dokumentation sehen können, tut die Pass-Anweisung nichts.

pass ist eine Nulloperation – wenn sie ausgeführt WIRD, passiert nichts. Es ist als Platzhalter nützlich, wenn eine Anweisung syntaktisch erforderlich ist, aber kein Code ausgeführt werden muss
. 7. Einfache Anweisungen – Die pass-Anweisung – Dokumentation zu Python 3.9.1

In Python darf der Inhalt in der def-Anweisung der Funktionsdefinition und der if-Anweisung der bedingten Verzweigung nicht weggelassen werden. Sie können die pass-Anweisung verwenden, wenn Sie etwas schreiben müssen, aber Sie müssen nichts tun.

Unterschied zwischen Pass und Continue

If die Continue-Anweisung in der for- oder While-Schleife used WIRD, fährt sie mit dem nächsten Schritt fort, ohne Code auszuführen, der nach Continue geschrieben wurde.

for i in range(3):
    print(i)
    if i == 1:
        continue
        print('CONTINUE')
# 0
# 1
# 2

Die pass-Anweisung nichts, sodass der bewirkt nach der pass-Anweisung geschriebene Code ausgeführt wird.

for i in range(3):
    print(i)
    if i == 1:
        pass
        print('PASS')
# 0
# 1
# PASS
# 2

Definieren Sie eine leere Funktion und Klasse mit pass

Möglicherweise müssen Sie eine leere Funktion oder Klasse definieren, wenn Sie zuerst eine Funktion oder Klasse definieren und dann die Implementierung austauschen möchten.

Wenn nichts in die def-Anweisung geschrieben wird, wird ein Fehler ausgelöst.

# def empty_func():
# SyntaxError: unexpected EOF while parsing

Sie können eine leere Funktion definieren, die nichts mit der Pass-Anweisung macht.

Dasselbe gilt für die Klasse.

# class EmptyClass():
# SyntaxError: unexpected EOF while parsing

class EmptyClass():
    pass

Obwohl es in PEP8 (E701) nicht empfohlen WIRD, löst das Schreiben von pass nach Einem Doppelpunkt : keinen Fehler aus.

def empty_func_one_line(): pass

class EmptyClassOneLine(): pass

Erstellen Sie mit einer leeren Datei

Um eine neue Datei zu erstellen, verwenden SIE with und open() im Schreibmodus w.

regelmäßig WIRD der Inhalt der Datei mit der write()-Methode usw. geschrieben, aber mit der Pass-Anweisung kann eine leere Datei erstellt werden.

with open('temp/empty.txt', 'w'):
    pass

Sie können auch wie oben beschrieben in einer Zeile schreiben.

with open('temp/empty.txt', 'w'): pass

In Python 3.4 und höher ist es auch möglich, mit touch() des pathlib-Moduls eine leere Datei zu erstellen.

Stellen Sie klar, dass nichts getan wird in if … elif … else … with pass

Sie können den Inhalt jedes Blocks in if … elif … else … nicht weglassen.

Verwenden Sie die Pass-Anweisung, wenn Sie die Implementierung ersetzen möchten oder wenn es ist, die Absicht des Codes zu verstehen, indem Sie ausdrücklich angeben, dass nichts getan WIRD.

a = 3
if a % 2 == 0:
    print('Even')
else:
    pass

Bei der Ausnahmebehandlung nichts tun (= Ausnahmen ausgeschlossen) mit pass

Beim Auftreten einer Ausnahme WIRD Eine Fehlermeldung ausgegeben und der Prozess beendet.

def divide(a, b):
    print(a / b)

# divide(1, 0)
# ZeroDivisionError: division by zero

Sie can try verwenden, um Eine Ausnahme abzufangen und Maßnahmen zu ergreifen. Wenn eine Ausnahme abgefangen WIRD, WIRD der Prozess ohne Beendigung.

def divide_exception(a, b):
    try:
        print(a / b)
    except ZeroDivisionError as e:
        print('ZeroDivisionError: ', e)

divide_exception(1, 0)
# ZeroDivisionError:  division by zero

Verwenden Sie die pass-Anweisung, wenn Sie eine Ausnahme abfangen und nichts tun möchten. Selbst wenn Eine Ausnahme ausgelöst WIRD, kann der Prozess normalerweise Werden, ohne etwas zu tun.

def divide_exception_pass(a, b):
    try:
        print(a / b)
    except ZeroDivisionError as e:
        pass

divide_exception_pass(1, 0)

Im following Artikel FINDEN SIE Laptops zur Ausnahmebehandlung in Python.