Kursleiter: Hallo und willkommen zurück.
In diesem Video geht es um alles und jeden.
Das sind zwei Funktionen, die sehr einfach sind, aber
in manchen Fällen sehr nützlich sein können.
Die Funktion any nimmt eine iterable und gibt true zurück,
wenn eines ihrer Elemente als true ausgewertet wird.
Die Funktion all gibt den Wert true zurück,
wenn alle Elemente den Wert true ergeben.
Hier ist ein Beispiel dafür, wann dies nützlich sein könnte.
Stellen Sie sich vor, Sie haben eine Liste mit den Standorten Ihrer Freunde.
Es handelt sich um eine Liste von Wörterbüchern, in der
jedes Wörterbuch den Namen deines Freundes und den Standort des Freundes enthält.
Dann fragen wir den Nutzer nach seinem Standort.
Und dann werden wir berechnen, welche Freunde sich
an diesem Ort befinden.
Die Liste ist also etwas länger und umfangreicher.
Geben Sie einfach den Freund für jeden der Freunde
in Freunde ein, wenn ihr Standort mit der Standortvariable
übereinstimmt, die die Benutzer eingegeben haben.
Stellen Sie sich also vor, sie kommen nach San Francisco.
Wir werden das Freundschaftsobjekt einfügen.
Sorry dieses Wörterbuch, für jeden der Freunde,
wenn sie in San Francisco sind.
Jetzt könnten wir sagen, wenn len(friends_nearby) > 0: das
bedeutet, dass es mindestens
einen Freund gibt, drucken Sie sind
nicht allein.
Ich werde das einfach ändern, damit es für Sie etwas lesbarer ist.
Das ist aber nicht
sehr schön, denn wir wollen uns nicht um die Länge
kümmern, sondern darum,
ob es Freunde gibt.
Hier kommen die "Any Friends" also ins Spiel.
Wenn Freunde in der Nähe drucken, sind Sie nicht allein.
Dabei wird jedes Element
in der Nähe der Freunde überprüft,
ob es der Wahrheit entspricht.
Jetzt sind wahrheitsgemäße Wert, beachten
Sie, wie diese Dinge sind nicht Boolesche,
sie sind Wörterbücher.
Ein wahrheitsgemäßer Wert ist ein Wert, der als wahr ausgewertet wird.
Hier sind also einige Werte, die als falsch ausgewertet werden.
Nur weil es nicht so viele gibt,
und es ist immer gut, sie zu kennen.
Zero wird als false ausgewertet, wenn man versucht, einen booleschen
Wert daraus zu gewinnen.
Das gilt natürlich auch für andere.
Das gilt auch für leere Listen, leere Tupel und leere Mengen.
Tut falsch, und natürlich Nullpunkt Null und
alle diese Art von Zahlen, die Null sind, bewerten
zu falsch.
Sie können, ob etwas zu wahr oder falsch ausgewertet
wird, indem Sie bool von Null.
So können wir das überprüfen und nach San Francisco einreisen.
Beachten Sie, dass es zunächst heißt, Sie seien nicht allein.
Und dann heißt es auch
noch, falsch, weil bool of zero falsch ist.
Das ist also die Aufgabe der Funktion any.
Sie geht jedes Element durch und fragt, ob
es wahr oder falsch wäre, wenn es ein Boolescher Wert wäre.
Wenn einer von ihnen wahr ist, dann
heißt es: Okay, das ist wahr, du bist nicht allein.
Sie können auch sagen, alle Freunde in der Nähe.
Aber auch hier wird die Funktion "Freunde in der Nähe"
entweder keine Freunde oder einen oder mehrere Freunde enthalten,
so dass das Ganze nicht viel
Sinn macht, da alle Ihre Freunde
Wörterbücher sein werden.
Wenn also eines davon wahr ist, werden alle wahr sein, weil sie alle
Wörterbücher sind, und
Wörterbücher
sind immer wahr, außer sie sind leer.
Any würde true zurückgeben, wenn es mindestens einen gibt.
Oder false, wenn es leer ist. In diesem
Fall ist es eine ziemlich praktische Funktion.
Ja.
Lassen Sie mich das jetzt einfach löschen.
Und natürlich würden alle gedruckt, zum Beispiel alle
von eins, zwei, drei, vier, fünf.
Diese werden wahr gedruckt.
Ich sage also San Francisco
und merke, dass hier wahr steht,
denn eins, zwei, drei, vier,
fünf sind alle wahr.
Aber sobald wir eine Null einfügen und es erneut ausführen,
erhalten wir false, weil nicht alle diese Dinge hier wahr sind,
eines davon ist false und das ist die Null.
Sie kann also unter bestimmten Umständen nützlich sein.
Ich wollte nur, dass Sie über diese
Funktion Bescheid wissen, für den Fall, dass
Sie sie einmal brauchen sollten.
Auch hier gebe ich Ihnen einige Werkzeuge an die Hand,
die Sie bei Ihrem Bauprojekt einsetzen können.
Vielleicht brauchen Sie sie nicht alle für ein bestimmtes Projekt, aber sie
können für andere Projekte nützlich sein.
Und bei diesen Funktionen handelt
es sich im Wesentlichen um die etwas obskureren Tools,
die viele Leute nicht kennen,
die aber dennoch nützlich sind, wenn man weiß,
dass sie existieren.
Das war's für dieses Video,
und wir sehen uns beim nächsten Mal wieder.