Python-stapinstructie

| | | | | | | | | | | | | | | | | | | | | | | |

De Python-pass-operator wordt gebruikt om lege codeblokken en lege functies te maken.

Voorbeelden van Python-pass-operators

Laten we enkele voorbeelden bekijken waarin pass wordt gebruikt.

1. pass statement in codeblok

Laten we zeggen dat we een functie moeten schrijven om alle even getallen uit een lijst te verwijderen. In dit geval gebruiken we een for-lus om de getallen in de lijst te doorlopen.



Als het getal deelbaar is door 2 , dan doen we niets. Anders voegen we het toe aan de tijdelijke lijst. Geef tot slot een tijdelijke lijst met alleen oneven nummers terug aan de beller.

Python ondersteunt geen lege codeblokken. Dus we kunnen hier de pass-instructie gebruiken om de bewerking in het if-condition-blok weg te laten.

 def remove_evens (list_numbers): list_odds = [] for i in list_numbers: if i% 2 == 0: pass else: list_odds.append (i) return list_odds l_numbers = [1, 2, 3, 4, 5, 6] l_odds = remove_evens (l_numbers) print (l_odds) 

Uitvoer: [1, 3, 5]

We hebben hier geen bewerkingen nodig in het if-condition-blok. Dus hebben we het pass-statement gebruikt om niets te doen.



2. pass statement voor lege functie

Er is geen concept van abstracte functies in Python. Als we een lege functie moeten definiëren, kunnen we deze niet zo schrijven.

 def foo (): # TODO - later implementeren 

Exit: IndentationError: Inspringend blok verwacht

We kunnen de pass-instructie gebruiken om een lege functie te definiëren. De functie heeft een instructie, maar doet niets.

 def foo (): pass 

meerdere instructies ?

Ja, we kunnen meerdere walk-statements hebben in een functie of codeblok. Dit komt omdat de pass-instructie de functie niet voltooit. Zijn enige werk &voorzie een lege verklaring.

 def bar (): pass print (`bar`) pass if True: pass pass print (` True`) else: print (`False`) pass pass 

Waarom heb ik het nodig?

  • De pass-operator van Python is erg handig bij het definiëren van een lege functie of een leeg codeblok.
  • Het belangrijkste gebruik van de pass-operator &maak een contract voor de klassen en functies die we later willen implementeren. We kunnen bijvoorbeeld een Python-module als volgt definiëren:
 class EmployeeDAO: def get_emp_by_id (self, i): "" "TODO: implementeer deze functie later: param i: werknemer-id: retour: werknemer-object "" "pass def delete_emp (self, i): pass # Deze functie leest het CSV-gegevensbestand van werknemers en retourneert een lijst met werknemers def read_csv_file (bestand ): pass 

 Python Pass-operator

We kunnen beginnen met de implementatie. Code van derden kent de functies en methoden die we gaan implementeren, zodat ze deze kunnen blijven implementeren.