‫Lassen Sie uns über etwas sprechen, das für Python ziemlich einzigartig ist und die Dinge für Python-Programmierer wirklich, wirklich nett
‫macht, und es heißt Verständnis, es ist einer unserer Schlüsselbegriffe.
‫Verständnis.
‫Was sind Sie?
‫Nun, sie werden eigentlich Listenverständnis oder Mengenverständnis oder Wörterbuchverständnis genannt.
‫Und dies sind einige der Datentypen, die wir in Python haben.
‫Und wir sind in der Lage, Verständnis mit diesen drei Datentypen zu verwenden, übrigens, während ich aufnehme, gibt es
‫im Hintergrund einige Vögel zwitschern.
‫Ich dachte, es wäre schön, nur das Zwitschern der Vögel im Hintergrund aufzunehmen.
‫Ich denke, es wird friedlich für Sie sein, wenn Sie sich ärgern.
‫Tut mir leid, aber hey, die Vögel müssen auch Spaß haben.
‫OK, also was sind diese Verständnisse?
‫Nun, sie sind eine schnelle Möglichkeit für uns, Listen oder Mengen oder ein Wörterbuch in Python zu erstellen, anstatt vielleicht eine Reihe von
‫Elementen an Listen zu wiederholen oder an sie anzuhängen.
‫Lassen Sie mich Ihnen also zeigen, dass meine Liste einer leeren Liste entspricht, anstatt etwas zu tun, und von hier
‫aus mache ich etwas wie vier Zeichen in Hello.
‫Meine Liste Punkt anhängen.
‫Charakter.
‫Damit ich endlich diese Liste erstellen kann, sagen wir mal meine Liste und wir drucken sie aus.
‫Wenn ich klicke, laufe.
‫Ich habe eine Liste erstellt, die die Zeichen von Hello enthält.
‫Alles klar, aber.
‫Gibt es einen schnelleren, saubereren Weg, dies zu tun, und ja, mit weniger Verständnis in Python.
‫Wieder ist es ziemlich einzigartig.
‫Sie sehen es nicht in vielen Programmiersprachen, aber Leute, die Python verwenden, lieben diese Funktion wirklich, und
‫ich auch.
‫Wie können wir dies also mithilfe eines Listenverständnisses tun?
‫Nun, das Format, dem wir folgen werden, ist wie folgt.
‫Wir werden Perram sagen.
‫Zum.
‫Perram in iterierbar.
‫Wenn ich also Perram sage, meine ich Parameter, oder in unserem Fall könnte es eine Variable sein, also können wir sie benennen,
‫wie wir wollen.
‫Also lassen Sie uns diesen Charakter so benennen, wie wir es hier getan haben, und dann einen Charakter, wie wir es hier getan haben.
‫Und dann wollen wir ein iterierbares in unserem Fall hallo sagen.
‫Wenn ich dies entferne und auf Ausführen klicke.
‫Ich bekomme das gleiche einfach so, also erstelle ich nach Creation Online 3 eine Liste, die Zeichen in
‫Hello enthält, ich mache hier eine for-Schleife und erstelle die Liste.
‫Ich denke also gerne darüber nach, hey, erstelle eine Variable und
‫dann machen wir eine for-Schleife und sagen, hey, für jede Variable im iterierbaren, die der Liste hinzugefügt wird.
‫OK, erweitern wir das, sagen wir, ich wollte etwas anderes machen, nennen wir es auch
‫meine Liste, und ich möchte, sagen wir, eine schnelle Liste mit Zahlen von null bis hundert oder null bis neunundneunzig
‫erstellen.
‫Wie würde ich das nochmal machen?
‫Unter Verwendung eines Listenverständnisses sage ich Nummer vier und was ist dann das Iterable, das ich verwenden werde?
‫Nun, ich werde einen Bereich verwenden und null bis 100 sagen, damit wenn ich hier auf Ausführen klicke.
‫Sehen Sie sich das an, ich bekomme eine schöne lange Liste, die mit all diesen Zahlen ziemlich gefüllt ist.
‫Wie cool ist das?
‫OK.
‫Aber hier ist meine Herausforderung an Sie.
‫Was wäre, wenn ich das wollte, aber alle Zahlen sollten mit zwei multipliziert werden.
‫Also möchte ich eine Liste, bei der dies gleich Null ist.
‫Dies ist zwei.
‫Das ist vier.
‫Das ist sechs.
‫Das ist acht.
‫Das ist zehn.
‫Und so weiter und so fort.
‫Wie kann ich es tun?
‫Nun, wir können dies tatsächlich erweitern, sodass meine Liste drei diesmal dieselbe for-Schleife verwendet, die wir zuvor
‫gesehen haben.
‫So, aber statt nur der Variablen, ist dies jetzt ein Ausdruck dafür, wie wir auf jedes Zeichen reagieren möchten,
‫genau wie wir es in Lambda-Ausdrücken gesehen haben.
‫Also ich kann jetzt mal taub dazu sagen.
‫Zum.
‫Diese Gegenstände.
‫Also, wenn ich jetzt meine Liste drei mache.
‫He, sieh dir das an.
‫Das ist ziemlich nett, nicht wahr?
‫Okay, machen wir es noch anspruchsvoller, sagen wir Miles drei, und machen wir das hier ein bisschen
‫größer.
‫Meine Liste für Ich möchte es so ändern, dass ich in meiner Liste immer noch die Nummern behalte, die ich habe, aber ich möchte nur
‫die geraden Nummern behalten.
‫In diesem Fall sind sie alle gerade, weil sie mit zwei multipliziert werden, aber wenn wir zum Beispiel
‫hoch zwei machen und dies für eine Sekunde auskommentieren und auf Ausführen klicken.
‫Wir sehen, dass einige Zahlen nicht sind.
‫Trotzdem möchte ich diese Zahlen behalten, aber nur die geraden, wie würde ich das machen?
‫Nun, in diesem Fall haben wir eine neue Möglichkeit, diesen Ausdruck zu erstellen. Wir machen genau dasselbe
‫wie hier.
‫Also kopiere ich das einfach.
‫Aber denken Sie daran, dass wir am Ende hier einen Ausdruck haben, etwas, das wir tun werden, um zu bewirken, was
‫auch immer das Element im Iterable ist.
‫Wir werden die Dinge durchgehen und schließlich danach sagen, ob oder wir eine Wenn-Bedingung ausführen können.
‫Sagen wir in unserem Fall, ich sage, wenn num.
‫Modulo zwei ist gleich null, wird erst dann der Liste hinzugefügt.
‫Wenn wir also klicken, laufen Sie.
‫Nun, und stellen Sie sicher, dass es weniger für Click Run ist.
‫Sehen Sie sich das an, all dies sind gerade Zahlen, also schauen wir uns dieses Format an.
‫Erinnern?
‫Diese werden Listenverständnis genannt, es ist eine Möglichkeit für uns, schnell Listen mit Python zu erstellen, anstatt Schleifen zu durchlaufen
‫und append oder Dinge zu verwenden, die wir zuvor gesehen haben.
‫Es ist also eine Kurzform für uns, solche einzigartigen Dinge zu tun.
‫Wir können dies tun, indem wir hier einen Ausdruck dafür haben, was wir mit jedem Element tun möchten, über
‫das wir iterieren, wir durchlaufen eine Schleife.
‫Mit einer for-Schleife durch unhittable geben wir ihr eine Variable, auf die wir reagieren werden, und
‫wenn wir wollen, haben wir auch die Möglichkeit, eine Bedingung hinzuzufügen und sagen, hey, nur basierend auf dieser Bedingung in die Liste aufgenommen
‫, basierend auf einem wahr oder falsch.
‫Sehr, sehr cool jetzt, obwohl Listenverständnisse wirklich nett sind, weil sie nur einfache Einzeiler
‫sind, kann es ziemlich verwirrend werden.
‫Wenn Sie sich diesen Code ansehen, müssen Sie mit dem Listenverständnis wirklich vertraut sein, um wirklich zu verstehen, was vor
‫sich geht.
‫Das macht den Code zwar kürzer, vielleicht sogar sauberer, nimmt aber ein wenig seiner Lesbarkeit.
‫Daher ist es möglicherweise besser, einfach eine beschreibende Funktion zu erstellen, z. B. eine Liste mit geraden Zahlen oder etwas in diese
‫Richtung zu generieren.
‫Es ist also anschaulicher.
‫Und ein anderer Entwickler könnte eine bessere Vorstellung davon haben, was vor sich geht.
‫Es ist also immer ein Kompromiss.
‫Lassen Sie uns eine Pause einlegen und im nächsten Video von Set- und Wörterbuchverständnis sprechen.