In diesem Artikel geht es um die Funktion all()
, durch die der Code übersichtlicher werden kann. Um dies zu verdeutlichen, werfen wir einen Blick auf dieses Beispiel:
def main():
has_id = True
has_name = True
has_password = True
if has_id and has_name and has_password:
print("All data is available.")
else:
print("Something is missing.")
if __name__ == '__main__':
main()
In der if-Verzweigung kommt der and
-Operator zur Anwendung, um zu prüfen, ob alle drei Bedingungen wahr sind. Im Ausgangsbeispiel ist dies der Fall, weswegen „All data is available.“ ausgegeben wird.
Dies lässt sich mithilfe von all()
vereinfachen:
def main():
has_id = True
has_name = True
has_password = True
credentials = [has_id, has_name, has_password]
if all(credentials): # <- all(iterable)
print("All data is available.")
else:
print("Something is missing.")
if __name__ == '__main__':
main()
Voraussetzung für die Verwendung von all()
ist das Vorhandensein eines iterierbaren Objekts (Liste, Tupel, Set, etc.). Aus diesem Grunde wurde die Liste credentials
erstellt, die die drei Variablen has_id
, has_name
und has_password
zum Inhalt hat. Diese kann dann an all()
übergeben werden.
Wie dem Beispiel entnommen werden kann, ist bei Verwendung von all()
die Bedingung True
, wenn alle Elemente eines iterierbaren Objekts True
sind. Darüber hinaus wird ebenfalls True
zurückgegeben, wenn das iterierbare Objekt keine Elemente enthält.