⊗pyPmLpFl 162 of 208 menu

Arbeit mit Flags in Python

Flag - ist eine spezielle Variable, die nur zwei Werte annehmen kann: True oder False. Mit Hilfe von Flags kann man Aufgaben lösen, die die Abwesenheit von etwas prüfen: man kann beispielsweise prüfen, dass in einer Liste kein Element mit einem bestimmten Wert vorhanden ist.

Lassen Sie uns die folgende Aufgabe lösen: gegeben ist eine Liste mit Zahlen, es muss geprüft werden, ob alle Elemente darin positiv sind. Dazu setzen wir eine spezielle Variable flag, die vor Beginn der Schleife wahr ist. Und sobald eine negative Zahl in der Schleife auftritt, ändern wir ihren Wert auf False. Um das Ergebnis der Prüfung zu erfahren, geben wir die Variable flag nach der Schleife in der Konsole aus:

lst = [1, 2, 3, 4, 5] flag = True for el in lst: if el < 0: flag = False print(flag) # gibt True aus, da alle Zahlen positiv sind

Gute Praxis ist es, der Variable mit dem Flag einen Namen zu geben, der die gestellte Bedingung widerspiegelt. Lassen Sie uns flag in isAllPositive umbenennen. Und zur Veranschaulichung ändern wir eine Zahl in der Liste auf eine negative:

lst = [1, 2, 3, -4, 5] isAllPositive = True for el in lst: if el < 0: isAllPositive = False print(isAllPositive) # gibt False aus, da eine negative Zahl vorhanden ist

Wenn in der durchsuchten Liste viele Werte sind und die Schleife nach der Entdeckung der ersten negativen Zahl gestoppt werden soll, dann sollte man die Anweisung break verwenden:

for el in lst: if el < 0: isAllPositive = False break

Bei der Arbeit mit Flags, um das Ergebnis der Schleifenausführung zu erfahren, kann man nicht den Wert des Flags ausgeben, sondern eine beliebige Nachricht mit Hilfe eines zusätzlichen if.

Lassen Sie uns das vorherige Beispiel umschreiben. Wenn alle Elemente positiv sind, dann soll '+++' ausgegeben werden, wenn nicht - '---':

for el in lst: if el < 0: isAllPositive = False break if isAllPositive: print('+++') else: print('---') # gibt '---' aus

Gegeben ist eine Liste. Prüfen Sie, ob alle ihre Elemente positive Zahlen sind.

Gegeben ist eine ganze Zahl. Prüfen Sie, ob es sich um eine Primzahl handelt, das heißt, ob sie nur durch eins und sich selbst teilbar ist.

azbydeenesfrkakkptruuz