30 Tage Python: Programmieren für Anfänger | Tony Alamo | Skillshare

Playback-Geschwindigkeit


1.0x


  • 0.5x
  • 0.75x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

30 Tage Python: Programmieren für Anfänger

teacher avatar Tony Alamo, Spark Your Brain

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

    • 1.

      Einführung

      3:28

    • 2.

      Wie der Kurs funktioniert

      2:26

    • 3.

      Tag 1 – Installiere Python (Mac)

      14:41

    • 4.

      Tag 1 – Installiere Python (Windows)

      11:59

    • 5.

      Tag 2 – Variablen

      11:39

    • 6.

      Tag 3 – Streicher

      9:23

    • 7.

      Tag 4 – Funktionen (1/2)

      10:01

    • 8.

      Tag 5 - Ruhetag :)

      1:02

    • 9.

      Tag 6 – Objektorientierte Programmierung (OOP) – Methoden

      6:52

    • 10.

      Tag 7 – String-Verkettung

      11:52

    • 11.

      Tag 8 – Benutzereingaben (Zahlen, Ganzzahlen, Floats, Kommentare)

      9:15

    • 12.

      Tag 9 – Konditionen (if/elif/else) und Code-Blöcke

      13:33

    • 13.

      Tag 10 - Ruhetag :)

      1:12

    • 14.

      Tag 11 – Funktionen (2/2)

      9:21

    • 15.

      Tag 12 – Listen, Sortierungen, Sortierung

      19:59

    • 16.

      Tag 13 – Loops

      13:46

    • 17.

      Tag 14 – Wörterbücher

      11:18

    • 18.

      Tag 15 - Ruhetag :)

      0:47

    • 19.

      Tag 16 – Tupel und Sets

      15:18

    • 20.

      Tag 17 – OOP – Definition des Kurses

      13:15

    • 21.

      Tag 18 – OOP – Klassenattribute und Methoden

      21:00

    • 22.

      Tag 19 – OOP – Vererbung

      11:20

    • 23.

      Tag 20 - Ruhetag :)

      1:22

    • 24.

      Tag 21 – Dateien

      11:41

    • 25.

      Tag 22 – Ausnahmebehandlung

      12:26

    • 26.

      Tag 23: Module und Python-Standardbibliothek

      14:55

    • 27.

      Tag 24 – Projekt – Python-Lern-App (1/5)

      18:16

    • 28.

      Tag 25 - Ruhetag :)

      1:16

    • 29.

      Tag 26 – Projekt – Python-Lern-App (2/5)

      8:47

    • 30.

      Tag 27 – Projekt – Python-Lern-App (3/5)

      7:55

    • 31.

      Tag 28 – Projekt – Python-Lern-App (4/5)

      4:58

    • 32.

      Tag 29 – Projekt – Python-Lern-App (5/5)

      4:37

    • 33.

      Tag 30 – Enden sind Neuanfänge

      0:48

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

4.088

Teilnehmer:innen

16

Projekte

Über diesen Kurs

Worum geht es in diesem Kurs?

Dieser Kurs soll dir zeigen, wie winzige Lektionen zu erheblichen Fortschritten führen können!  Die meisten Menschen neigen dazu, zu überschätzen, was sie an einem einzigen Tag erreichen können, aber oft zu unterschätzen, was sie in nur 30 Tagen erreichen können.

Python zeichnet sich als eine der beliebtesten und vielseitigsten verfügbaren Programmiersprachen aus. Während dieses Kurses erwerben Sie das grundlegende Wissen, das zum Schreiben Ihrer Python-Programme erforderlich ist. Der Kurs ist auf 30 Tage mit einer täglichen Dauer von etwa 15 Minuten aufgebaut. Du wirst die grundlegenden Konzepte verstehen, die erforderlich sind, um deine eigenen praktischen Anwendungen zu programmieren, und eine starke Grundlage für die Erforschung aller Programmierfelder legen, an denen du interessiert sein könntest.

Pythons bemerkenswerte Flexibilität ermöglicht die Anwendung in einer Vielzahl von Domänen, einschließlich künstlicher Intelligenz, maschinelles Lernen, Datenanalyse, Datenvisualisierung, Webentwicklung, Softwareprogrammierung, Finanzen und sogar Spieleentwicklung! Dieser Kurs beginnt mit grundlegenden Python-Konzepten wie Variablen und führt dich schrittweise zu deinem endgültigen Projekt: der Entwicklung deiner Python-Befehlszeilenanwendung. Dieses Projekt wird alle Konzepte integrieren, die du während des Kurses gelernt hast, und dir helfen, die Punkte effektiv zu verbinden.

Für wen ist dieser Kurs geeignet?

Das Erlernen des Programmierens kann für alle wertvoll sein, auch wenn du es nicht professionell verwenden möchtest. Es erweitert dein Verständnis der digitalen Landschaft – die uns – heute – umgibt – . Dieser Kurs ist – für dich – richtig, wenn eine der folgenden Aussagen bei dir Anklang finden:

  • Ich bin völlig neu in der Programmierung. Wo gebe ich meine allererste Codezeile ein?
  • Ich habe in der Vergangenheit gelernt zu programmieren, aber ich bin auf der Suche nach einer Auffrischung.
  • Ich möchte das Coding entmystifizieren und ein Gefühl dafür bekommen, wofür es verwendet werden kann.
  • Ich möchte eine starke Grundlage für einen Job legen, der mit dem Programmieren verbunden ist.
  • Ich möchte mein Gehirn dehnen, indem ich etwas Neues lerne.

Wie werde ich lernen?

Der Kurs ist so konzipiert, dass er 30 Tage lang jeden Tag 15-minütige Bitesize-Lektionen durchlaufen kann – und er konzentriert sich darauf, intelligent und nicht schwer zu lernen. Du kannst es in deinem eigenen Tempo durchlaufen, wenn du also jeden Tag zwei Lektionen absolvieren und den Kurs in 15 Tagen abschließen möchtest, ist das in Ordnung, und wenn du es langsamer angehen möchtest, ist das auch völlig in Ordnung.

Wir nutzen evidenzbasierte Lerntechniken wie Active Recall und Spaced Repetition, um dein Lernen zu verbessern und das erworbene Wissen für das Langzeitgedächtnis zu binden. Wir haben praktische tägliche Übungen, die dir helfen, das Gelernte zu verinnerlichen, und sogar Ruhetage zum Erholen und Überprüfen zu finden. Alles in allem läuft es so ab:

  • 15 Minuten/Tag für 30 Tage (du bestimmst dein Tempo)
  • Folge jeder Lektion mit
  • Tägliche Übungen zur Umsetzung des neuen Lernens
  • Ruhe- und Erholungstage nach jeweils 4 Lektionen
  • Abschlussprojekt zur Verbindung der Punkte

Welche Art von Software werde ich verwenden?

Wir starten  mit dem Herunterladen und Installieren der erforderlichen Software:

  • Python 3
  • iPython – ein verbesserter Python-Interpreter
  • Visual Studio Code – ein beliebter und leistungsstarker Code-Editor

Kursinhalte:

  • Installation
  • Variablen, Zahlen, Strings, String-Verkettung, Indizierung
  • Conditionals, Codeblöcke, For-Loops, While-Loops
  • Listen, Bereiche, Wörterbücher, Tupel und Sets
  • Funktionen
  • Nutzereingaben
  • Einführung in die objektorientierte Programmierung (OOP)
  • Kurse – Definition, Attribute, Methoden, Vererbung
  • Dateien
  • Ausnahmebehandlung
  • Module und Python-Standardbibliothek
  • Praktisches Projekt – Python-Lernanwendung

Triff deine:n Kursleiter:in

Teacher Profile Image

Tony Alamo

Spark Your Brain

Kursleiter:in

Hey, there! I'm Tony :)

Right after I graduated as an engineer in Boston, I jumped right into Data Analytics - starting off at a startup accelerator in Cambridge, MA, where we worked to start web companies from scratch and launch them into the world!

Even though this was super exciting work, I eventually decided to focus my attention on what I'm most passionate about - learning how to learn and teaching others how to do the same.

Most of us were never taught that the brain's structure can change based on our experiences, and learning is one of the best brain exercises there is!

I hope you find my Skillshare classes, YouTube videos, and other sharing platforms helpful, and that you join me on my journey to wake up and live a more meaningful life in the pr... Vollständiges Profil ansehen

Skills dieses Kurses

Entwicklung Programmiersprachen Python
Level: Beginner

Kursbewertung

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen auf Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. Einführung: Hallo, mein Freund, mein Name ist Tony und ich arbeite schon eine Weile in Python. Und es ist auch das, bis letztes Jahr, dass ich an Internet Venture Accelerator in Boston gearbeitet habe, wo ich an der Programmierung verwandter Projekte gearbeitet habe, die darauf abzielen, wo Unternehmen von Grund auf neu zu starten und sie auszusuchen in die reale Welt. Das war aufregende Arbeit, aber ich freue mich noch mehr zu sagen , dass ich kürzlich Wege mit diesem Job feiere , um das zu verfolgen, worauf ich jeden Morgen aufwachen möchte , nämlich lernen zu lernen und anderen beibringen, wie man das Gleiche macht. Das bringt mich heute hierher und auch zu meinem YouTube-Kanal in diesem Programmierkurs wird klug arbeiten und nicht harte Welt tief tauchen und sich jeden Tag nur 15 Minuten lang konzentrieren. Für 30 Tage gibt es tägliche Übungen, mit denen Sie lernen können , indem Sie mehr tun, sogar alle vier Sitzungen Ruhetage verbringen, damit Sie verinnerlichen können, warum Sie lernen. Und schließlich werden wir unser letztes Projekt haben, in dem Ihr Code und Ihre eigene Python-Anwendung vorhanden sind. Sie lernen die Fähigkeiten kennen, die Sie benötigen , um Ihren eigenen Python-Code zu schreiben. Einige der Dinge werden wir uns mit unseren Variablen und Datentypen befassen , wie Strings, Zahlen und Listen. Wir werden uns auch mit Funktionen, Bedingungen und sogar objektorientierter Programmierung und vielem mehr befassen Bedingungen und sogar objektorientierter . Und selbst abgesehen von Python werden wir auf eine der wichtigsten Techniken und Konzepte im Zusammenhang mit beschleunigtem Lernen eingehen, wie zum Beispiel aktives Abrufen und Wiederholung des Weltraums. Und all dies macht im Moment vielleicht nicht viel Sinn, aber wir werden lernen, was das während des gesamten Kurses sind , und Sie werden in der Lage sein, die Punkte im letzten Projekt in diesem Kurs zu verbinden letzten Projekt in diesem Kurs jeder, der nicht einmal eine Ahnung davon welche Programmierung oder Programmierung überhaupt zu programmieren ist, oder jeder, der in der Vergangenheit das Programmieren gelernt hat und einfach eine strukturierte und Auffrischung benötigt , wenn Sie lernen möchten wie man kodiert, um schließlich hochbezahlte Jobs zu bekommen. Und Entwickler wollen sich wiederholende Aufgaben automatisieren , um sich etwas mehr Zeit zu verdienen, oder sind einfach aus Neugier hier und versuchen, etwas Neues zu lernen nur um zu lernen, dann ist dies der richtige Kurs für Sie und die einzigen Tools, die Sie brauchen und die Bereitschaft zu lernen , wie Insel Python viel schwieriger war, als es hätte sein sollen, hauptsächlich weil sie es getan hatten keine Struktur und ich habe alles alleine gemacht. Und Diskurs ist genau das, was ich wünsche. Ich hätte es an dem Tag gehabt, an dem ich versucht habe, meine allererste Codezeile zu schreiben, einen strukturierten Schritt-für-Schritt-Prozess, der von jemandem gelehrt wird , der nicht nur sehr gut kodieren kann , sondern vor allem jemand, der weiß, wie das Gehirn funktioniert und wie man wissenschaftlich bewährte Techniken einsetzt , um den Lernprozess zu beschleunigen. Sie haben sich zunächst für eine hervorragende Programmiersprache entschieden , da Python eine sehr beliebte Programmiersprache auf der ganzen Welt ist Programmiersprache auf der ganzen Welt Wie ich in diesem Kurs erwähnt habe, werden Sie Ihre eigene Python-Anwendung im endgültigen Projekt , in dem die App alle Tools verwendet , die wir während des Kurses gelernt haben. Und es wird dich zu jedem Thema befragen, das du studieren möchtest. Und es wird Ihre Ergebnisse beibehalten, damit Sie wissen, wie gut es Ihnen bei jedem Thema geht. Und wenn Sie zurückkommen, wissen Sie, welchen Schwachstellen Sie arbeiten müssen. Das Endprodukt wird entscheidend sein um die Punkte und das, was Sie gelernt haben, zu verbinden. Und deshalb ist es wirklich wichtig Sie konsistent bleiben und kleine, aber durchgeführte Schritte unternehmen, um die 30-Tage abzuschließen. Denn jeder Tag wird so sein, als würde man einen Pinsel greifen und gut durchdacht und in Canvas geliefert werden. Es wird nicht ganz sinnvoll sein, wenn Sie zurücktreten und sofort auf die Leinwand schauen. Aber mit der Zeit, indem Sie einfach zurückkommen und jeden weiteren Dollar in der Leinwand absichtlich und konsequent malen , werden Sie schließlich zurücktreten und Sie werden erstaunt sein, wenn Sie sehen Sie endlich mit Klarheit , wofür er gearbeitet hatte. All die. Wie Steve Jobs einmal sagte, wird sich die Dosis nur im Nachhinein verbinden. Denken Sie also daran, dass es heute immer wieder nichts anderes hinzuzufügen gibt. Ich hoffe wirklich, dass Sie sich entscheiden, dies zu versuchen und ein gutes Gefühl zu haben oder sich sehr bald zu sehen. 2. Willkommen!: Willkommen Programmierer, um Python in 30 Tagen zu lernen. Ich freue mich sehr, Sie bei der EOB-Codierung hier zu haben und wissen Sie, Zeit. Sie fragen sich wahrscheinlich, wie das in diesem Kurs detaillierter funktionieren wird in diesem Kurs detaillierter funktionieren Wir werden 30 tägliche Lektionen haben, die etwa 15 Minuten dauern werden. Wir haben sogar Ruhe- und Erholungstag 74 Lektionen in diesen Lektionen, es wird kein neues Material und sie sollen Ihnen die Möglichkeit geben, frühere Sitzungen zu erholen und zu überprüfen denen Sie glauben, dass Sie es wert sein könnten nochmal besucht. Wir haben ein anderes Tempo. Vielleicht stellen Sie vielleicht sogar fest, dass es für Sie besser funktioniert , wenn Sie jeden Tag zwei Lektionen machen. Und das würde bedeuten, dass Sie den Kurs in 15 Tagen statt 30 Tagen in der Hälfte der Zeit beenden würden . Und das ist völlig in Ordnung, wenn das für Sie funktioniert, es stellt nur sicher, dass Sie das Wissen nicht verdrängen und sich Zeit nehmen, um das Gelernte zu verinnerlichen und zu verdauen. Deshalb würde ich nicht empfehlen jeden Tag mehr als zwei Lektionen zu nehmen. Es gibt ein chinesisches Sprichwort , das „y“ sagt. Ich vergesse was ich sehe. Ich erinnere mich, aber was ich tue, verstehe ich. Deshalb konzentriert sich dieser Kurs auf praxisorientiertes Lernen. Ich möchte, dass Sie so viel wie möglich mit allem experimentieren , was Sie jeden Tag lernen , dem Sie folgen können , was ich auf dem Bildschirm mache. Und am Ende jeder Lektion haben wir sogar Übungen , die Sie machen und sofort mit dem Programmieren beginnen, was Sie damals gelernt Sie werden irgendwo unter dem Bildschirm sehen, wahrscheinlich rechts, eine Liste aller Videos, die mit jedem Datum klar beschriftet und nummeriert sind, sollen aufgenommen werden. Es sollte wahrscheinlich auch unten einen Nachrichtenbereich geben, in dem Sie Nachrichten und Kommentare oder Fragen posten können Kommentare oder Fragen jeder sehen kann, damit wir uns gegenseitig helfen können. Es gibt auch Tools, die Sie im Video auf dem Bildschirm sehen , die ähnlich wie andere Videoplattformen funktionieren , die Sie bereits verwendet haben. Eine der nützlichsten könnte die Wiedergabegeschwindigkeitstaste übertreffen. Auf diese Weise können Sie das Video nach Belieben beschleunigen oder verlangsamen. Sie können auch während des gesamten Kurses feststellen, dass ich relativ langsam spreche dies absichtlich relativ langsam spreche, da dieser Knopf Ihnen die Flexibilität gibt, die Geschwindigkeit auf das zu ändern , was für Sie am besten funktioniert. Und schließlich wollte ich Sie bitten, dies voll auszuspielen und sich zu verpflichten, den Kurs abzuschließen, einen Kalender zu schnappen und jeden Tag etwas Zeit zu legen. Sie werden sich also eher hinsetzen und jede Lektion abschließen. Ich habe mich bereits die Hälfte der Mühe gegeben , indem ich diesen Kurs für dich erstellt habe, aber das wird für nichts funktionieren es sei denn, du hast die andere Hälfte der Arbeit in die andere Hälfte der Arbeit investiert. Also lade ich Sie ein, zurückzukommen und einen lustigen Zustand zu haben, bereit sich zu konzentrieren und bereit, ohne weiteres zu lernen . Lasst uns das machen. 3. Tag 1 – Installiere Python (Mac): meinen Freund willkommen, Python in 30 Tagen zu lernen , und heute ist Tag eins. Heute haben wir einige Ziele und das wichtigste wird die Installation sein. Dieses Video ist speziell für die Installation von Mac OS vorgesehen. Stellen Sie sicher, dass Sie einen Mac verwenden. Wenn Sie sich dieses Video ansehen möchten einen Windows-Computer haben, können Sie zu dem entsprechenden Video wechseln, das Sie auf der Videoliste mit der Aufschrift Installation für Windows sehen auf der Videoliste mit der Aufschrift Wenn wir uns die anderen Ziele ansehen, müssen wir uns mit dem größten Lernhindernis Wir müssen verstehen, was das größte Lernhindernis ist, und wir können es angehen. Wir werden auch verstehen, wie unsere Fragen die Antwort sind. Als Nächstes werden wir mit der Installation von Python und dem, was wir brauchen , um unser Leben einfacher zu machen, fortfahren . Also ein paar andere Dinge, die wir installieren müssen. Und zum Schluss überprüfen wir die Installation und drucken unsere ersten Befehle auf den Bildschirm Gehen wir zum Lernbereich über. Okay, das größte Hindernis beim Lernen ist also der Glaube , dass Sie es bereits wissen. Und das ist sinngemäß: Sobald wir die Barriere des Denkens gesenkt haben, dass wir bereits etwas wissen, öffnen wir unseren Geist, um neue Dinge zu lernen. Als Nächstes müssen wir wissen, dass wir aufgeschlossen sein müssen, um zu lernen. Weil der Geist nur funktioniert, wenn er offen ist. Es ist wie ein Fallschirm Es ist wirklich wichtig, dass wir weiterhin Fragen stellen. Wenn Sie während des Kurses Fragen haben, schreiben Sie sie auf, da es sehr wahrscheinlich ist, dass wir diese Fragen später im Laufe des Kurses beantworten. Ein weiterer Vorteil beim Stellen von Fragen besteht darin, dass Sie, wenn Sie eine Frage stellen, Ihren Geist darauf vorbereiten, nach Antworten zu suchen. Wann immer die Antworten kommen, Sie umso besser darauf vorbereitet, sie anzunehmen. Denk an diesen Elefanten. einschränkender Glaube ist, dass er sein Bein nicht befreien kann , weil er versagt hat, als er klein war, aber diesen Glauben nie wieder in Frage gestellt hat. Selbst wenn es stark genug geworden ist, sich zu befreien, indem es ständig Fragen stellt anstatt sich mit Antworten zufrieden zu geben, ist es wahrscheinlicher, dass wir einschränkende Überzeugungen brechen Wenn Sie jemals gedacht haben, dass Sie Programmieren nicht lernen können, ist dies ein guter Zeitpunkt, um diese Überzeugung in Frage zu stellen, denn was passiert mit Ihrem Gehirn, wenn Sie eine Frage stellen Es beschäftigt sich sofort mit der Frage und fängt sofort an, über mögliche Antworten nachzudenken an, über mögliche Antworten Das bedeutet , dass wir uns Fragen als Live-Antworten im gegenwärtigen Moment vorstellen Andererseits kann es sein, dass Sie, sobald Sie einer Frage eine Antwort zuweisen und sie von da an für bare Münze nehmen, daran gehindert mehr vom Gesamtbild zu sehen. Aus diesem Grund sind Fragen die Antwort. Denken Sie daran und fahren wir mit der Installation fort. Das erste, was wir tun werden , ist, in unseren Browser zu gehen und Python von Google herunterzuladen. Wir versuchen, auf die Website Python.org zu gelangen. Und sobald Sie hier sind, gehen Sie in den Download-Bereich Sie werden auf Download für Macos klicken. Dann öffnen Sie die Datei, die heruntergeladen wird, und das Installationsprogramm wird geöffnet. Sie werden auf Weiter klicken und all diesen zustimmen. Und sobald Sie auf Installieren klicken , wird es auf Ihrem Computer installiert und Sie sehen den Ordner, den Sie gerade mit der Python-Software installiert haben. Als Nächstes warten Sie, bis die Installation abgeschlossen ist, und dann schließen Sie das Installationsprogramm und verschieben es in den Papierkorb. Herzlichen Glückwunsch, Sie haben gerade Python auf Ihren Computer heruntergeladen. Als Nächstes werden wir unser Terminal öffnen. Ich werde die Befehlszeile verwenden und dann Terminal eingeben. Das Terminal ist sehr nützlich , wenn wir mithilfe schriftlicher Befehle mit unserem Computer interagieren möchten . Hier können wir mit Dateien arbeiten und in Ordnern navigieren , genauso wie wir beispielsweise den Finder verwenden. Dafür können wir unser Terminal benutzen. Wir können das Terminal unter anderem verwenden um zu überprüfen, ob Sie Python korrekt installiert haben. Dazu führen wir einfach die Python-Three-Space-Version aus und drücken die Eingabetaste, und Sie können sehen, dass Sie Python Three installiert haben. Eine andere Sache, die Sie mit Ihrem Terminal tun können , ist, dass Sie Python ausführen können. Dazu geben wir einfach Python drei und Enter ein. Dadurch wird einfach der Standardinterpreter von Python geöffnet Standardinterpreter von Python geöffnet Dieser Interpreter wird Repl genannt, REPL, was für Read, Evaluate, Print Loop steht Das bedeutet einfach , dass die Umgebung Befehle liest und auswertet unsere Befehle liest und auswertet und sie dann auf dem Bildschirm ausgibt. Und mach das in einer Schleife. Die erste Funktion und der erste Befehl, den wir in Python lernen werden , ist die Druckfunktion. Dazu schreiben wir einfach print open, runde Klammer und dann zwischen Anführungszeichen. Und Sie können einfache oder doppelte Anführungszeichen verwenden , was auch immer Sie bevorzugen. Hier schreibst du etwas Text auf. In diesem Fall schreiben wir Hello World auf. Und dann schließt du das Zitat und dann die runde Klammer. Wenn Sie die Eingabetaste drücken, wird Hello World oder der Text , den Sie in die Druckfunktion eingegeben haben, auf dem Bildschirm gedruckt. Wenn wir schließlich den Standardinterpreter von Python in der Umgebung beenden wollen , schreiben wir einfach quit und runde Klammern auf und drücken die Eingabetaste Das nächste, was wir installieren werden, ist Python. Python ist einfach eine weitere Repl - und eine andere Python-Umgebung Der Standardumgebung von Python sehr ähnlich, bietet jedoch mehr Funktionen und ist eine erweiterte Version dieser Standardumgebung Um Python zu installieren, werden wir Pip verwenden. Der Befehl lautet wie folgt, es wird Pip Three sein, Python installieren Wenn das nicht funktioniert, haben Sie möglicherweise eine andere Version von Pip Du könntest also Pip ohne die drei verwenden und dann Python installieren und das sollte funktionieren Was Pip ist, ist, dass es ein Python-Paketmanager ist. Es verwaltet Module, die wir aus dem Internet auf unseren Computer herunterladen können aus dem Internet auf unseren Computer herunterladen Und wir werden uns später im Kurs mit Modulen befassen . Wenn wir also die Eingabetaste drücken, sehen wir, dass es auf unseren Computer heruntergeladen wird. Und für mich hatte ich es in meinem Fall bereits heruntergeladen. Ihr Bildschirm sieht also vielleicht etwas anders aus und es kann etwas länger dauern, aber das sollte gut funktionieren. Um Python auszuführen, geben wir einfach Python in das Terminal ein und drücken die Eingabetaste, und das würde Python öffnen. Und wir haben jetzt eine weitere Abstoßumgebung, die, ich bereits erwähnt habe, einer Standardumgebung ähnelt Und wir können dieselbe Druckfunktion wie zuvor verwenden. Also zusammenbrechen, Hello World drucken, Enter, wir werden Hello World auf dem Bildschirm sehen. Um Python dann zu beenden, geben Sie einfach Quit und Enter ein. Und das bringt Sie zurück zu Ihrem Terminal. Das nächste, was wir herunterladen möchten, und das Letzte, was wir herunterladen, ist VS-Code oder Visual Studio-Code. Dafür laden wir einfach den Visual Studio-Code von Google herunter , der Sie zur Website führen sollte. Sie werden die Version für Mac herunterladen. Was VS-Code ist, ist einfach ein Code-Editor. So wie Sie Microsoft Word verwenden könnten, um Ihre Aufsätze oder alles, was Sie schreiben möchten, zu schreiben Sie würden VS-Code verwenden , um Ihre Skripts zu schreiben. Es hat Funktionen , die beim Schreiben unseres Codes sehr hilfreich sein werden . Sie würden den VS-Code also wie jede andere Anwendung herunterladen . Im Moment haben wir diese Zip-Datei, mit der die Anwendung beim Öffnen in meinen Download-Ordner verschoben wird. Ich verschiebe das einfach in meinen Anwendungsordner und bin bereit, Visual Studio-Code über die Befehlszeile zu öffnen. Hier können wir auf Öffnen klicken. Das würde die Anwendung öffnen und den Vollbildmodus anzeigen. Und wir können diese Tabs schließen, wir können mit der Erstellung einer neuen Datei fortfahren. In der Datei. Neue Datei. Und dann ist es gerade einfach eine Textdatei. Wir können also den gleichen Befehl schreiben wie im Python-Interpreter . Drucken Sie Hallo Welt. Wir können Datei, Speichern unter und dann speichern unter. Ich werde es Hello World nennen. Und ich werde es auf meinem Desktop behalten und sicherstellen, dass ich die Erweiterung hinzufüge, die dem Computer mitteilt, dass es sich um eine Python-Datei handelt. Erlauben Sie VS-Code, auf den Ordner zuzugreifen , in dem Sie ihn speichern möchten. Jetzt haben Sie ein gespeichertes Python-Skript. Eine wirklich coole Funktion VS-Code ist, dass er Erweiterungen hat. In unserem Fall werden wir die Python-Erweiterung herunterladen wollen . Ich habe es bereits heruntergeladen. In Ihrem Fall wurde Ihnen jedoch möglicherweise bei jedem Versuch, die Py-Datei zu speichern, eine Popup-Meldung angezeigt, in der empfohlen wird, die Erweiterung herunterzuladen Oder du könntest einfach in den Erweiterungsbereich gehen und die Python nachschlagen und sie herunterladen. Und das würde automatisch für Ihre Python-Dateien gelten. Okay, nehmen wir an, wir haben unsere Datei, wir haben unser Skript gespeichert , das wir gespeichert haben, und wir sollten den VS-Code öffnen und wir versuchen, diese Datei zu finden. In diesem Fall können wir im Folgenden versuchen, einen Ordner zu öffnen. Ich verschiebe diese Datei auf meinen Desktop und dann in den Entwicklungsordner auf meinem Desktop, was für Entwicklung steht Und ich werde diesen Ordner einfach öffnen. Wir können sehen, dass wir diese Registerkarte „Erste Schritte“ bekommen, die wir schließen können, aber dann haben wir den Ordner gleich hier auf der linken Seite. Und wir können einfach auf die Datei klicken , die wir gespeichert haben. Das ist unser Skript. Und es wird im Code-Editor geöffnet. Wenn wir nun dieses Skript ausführen wollten, könnten wir zu unserem Terminal gehen. Also werde ich das Command Space Terminal ausführen , um mein Terminal zu öffnen. Dann müssen wir vor dem Terminal ein paar Befehle lernen vor dem Terminal ein paar Befehle , die sehr nützlich sein werden. Der erste ist der PWD-Befehl , der für Print Working Directory steht Das bedeutet im Terminal, dass es uns genau sagt, wo wir uns befinden Wir können sehen, dass dies der Dateipfad zu dem ist, wo wir uns befinden. Wir befinden uns gerade im Benutzerordner Antonio Alamo und dann im Desktop-Ordner Dann gibt es noch den LS-Befehl, der für Liste steht und die Dateien auflistet, die sich im aktuellen Ordner befinden Hier können wir alles sehen , was sich unter unserem Desktop befindet. Das wäre so, als ob wir in den Finder gehen und sagen würden, okay, lass uns sehen, was auf unserem Desktop ist Und dann sehen wir, dass wir all diese Dateien haben. Wir können dasselbe auf unserem Terminal sehen. Ein weiterer nützlicher Befehl ist jetzt der C D-Befehl , der für Change Directory steht. Für diesen machen wir CD, dann Space und notieren uns das Verzeichnis, in das wir gehen wollen. Stellen Sie sich in diesem Fall vor, wir wollen in den Entwicklungsordner gehen Wir könnten sagen Benutzer Antonio Alamo, Desktop und dann Entwickler, ich verwende den Tab für die Vervollständigung der Ordner Jetzt könnten wir die Eingabetaste drücken. Und wenn wir das Arbeitsverzeichnis drucken, können wir sehen, dass wir uns gerade im Entwicklungsordner befinden Wenn wir LS für Liste verwenden, können wir die Dateien sehen, die sich im aktuellen Ordner befinden, und das Arbeitsverzeichnis, in dem wir uns gerade befinden. Ein noch nützlicherer Befehl zum Lernen ist die CD. Und dann können wir, anstatt den absoluten Dateipfad aufzuschreiben , was das ist, einen relativen Befehl drucken. Wir können sagen Punkt, Punkt. Und dann drücken Sie die Eingabetaste, und das bedeutet, zum vorherigen Ordner zu gehen. Jetzt können Sie sehen, dass wir beim Drucken des Arbeitsverzeichnisses einen Schritt zurück gegangen sind. Wir sind jetzt auf dem Desktop statt im Entwicklungsordner, jetzt machen wir LS und wir sehen dasselbe Und dann können wir zurückgehen, das Verzeichnis in den Entwicklungsordner wechseln und sofort weitermachen, weil Sie nicht die absolute Datei aufschreiben müssen. Sie können den Ordner auch schreiben, Sie können den Ordner auch schreiben je nachdem, ob er sich im aktuellen Jetzt, wo wir im Devel-Ordner sind, könnten wir LS machen und wir sehen, dass wir das Hello World-Skript haben Wenn wir dieses Skript ausführen möchten, wir einfach den folgenden Befehl aus, nämlich Python Three Space, und dann das Skript , das wir ausführen möchten. Und wenn wir dann die Eingabetaste drücken, sehen wir, dass wir das Skript ausführen. Und die Befehle oder die Zeilen , die sich unter diesem Skript befinden, werden ausgeführt. Und wir können Hello World auf dem Bildschirm sehen. Visual Studio bietet diesen Service tatsächlich für uns an. Wir können zum Terminal gehen und auf Neues Terminal klicken und wir können dasselbe sehen. Es ist ein VS-Code für Terminal 4 , der speziell denselben Befehl ausführt. Wir können das Arbeitsverzeichnis drucken und sehen, dass wir uns gerade im Entwicklungsordner befinden Wenn wir einen Schritt zurückgehen wollten, könnten wir das Verzeichnis in das obige Verzeichnis wechseln und wir könnten sehen , dass wir uns unter dem Desktop Wenn wir LS verwenden, können wir alles sehen, was sich unter unserem Desktop befindet. Wir könnten noch weiter zurückgehen, wenn wir wollten, aber wir können auch zu unserem Desktop zurückkehren, Verzeichnis wechseln und dann Verzeichnis wieder in unseren Entwicklungsordner wechseln Ein weiterer nützlicher Befehl ist der Befehl clear , um einfach das Terminal zu löschen, damit wir es richtig sauber machen können Dann können wir den LS-Befehl erneut ausführen, um zu sehen, dass wir uns in unserem Entwicklungsordner befinden und dass wir unser Hello World Do-Skript sehen können unser Hello World Do-Skript sehen Wenn wir dieses Skript ausführen wollten, können wir Python einfach erneut ausführen. Drei, hallo Welt. Und wir können Hello World auf dem Bildschirm sehen, alles im VS-Code. Die letzte Möglichkeit, wie wir diese Datei ausführen können, ist die Verwendung einer VS-Code-Funktion, der Sie einfach auf die Play-Schaltfläche klicken, genau hier oben, oben rechts auf Ihrem Bildschirm. Und Sie können sehen, dass das Hello World-Skript ausgeführt wird. Wir können das noch einmal versuchen, den Bildschirm löschen und wir können die Play-Taste sagen. Und dann können wir sehen , dass es das Drehbuch ist. Das reicht also für den heutigen Lernabschnitt und wir sind bereit, mit der Zusammenfassung fortzufahren Wir haben gelernt, dass wir aufgeschlossen sein müssen , wenn wir schnell lernen wollen, und dass wir viele Fragen stellen und verstehen müssen wichtig Fragen sind und wie Fragen beantwortet Wir haben auch Python Three auf unserem Computer installiert , ebenso Python - und Visual Studio-Code. Visual Studio Code ist der Code-Editor. Schließlich haben wir unsere ersten Python-Befehle mit der Print-Funktion ausgeführt . Gehen wir nun zum Abschnitt „ Verstehen“ über. Im Abschnitt „Verstehen“ werden wir jeden Tag praktische Erfahrungen sammeln. Wir werden hier Fragen stellen, wir werden einige Übungen haben wir mit unserer Python machen können. Und jetzt für heute, die erste Frage ist, wie Fragen beantwortet werden können. Also möchte ich, dass du diese Frage beantwortest und über diese Frage nachdenkst. Als Nächstes möchte ich, dass Sie die Version von Python, die Sie installiert haben, über das Terminal auf Ihrem Bildschirm ausdrucken . Und dann drucke deinen Namen mit dem Standardinterpreter von Python Das würde bedeuten, die Druckfunktion zu verwenden und dann Ihren Namen und andere Wörter mit Python zu drucken. Drucken Sie abschließend Ihren Namen aus, indem ein Skript mit der Erweiterung py ausführen. Ich würde empfehlen, dafür VS-Code zu verwenden und diese Datei zu speichern. Das wird für heute passen, Leute. Vielen Dank für das Zuschauen. Denken Sie daran, wenn Sie Fragen haben, diese in den Kommentaren unten posten, diese in den Kommentaren unten posten damit die Community Ihnen helfen kann. Und wir sehen uns morgen wieder hier. 4. Tag 1 – Installiere Python (Windows - Neu): meinen Freund willkommen, Python in 30 Tagen zu lernen . Und heute ist Tag eins. Und heute haben wir einige Ziele und das wichtigste wird die Installation sein. Und dieses Video ist speziell für die Installation des Windows-Betriebssystems bestimmt. Sehen Sie sich das an, wenn Sie unter Windows arbeiten und ein Mac-Betriebssystem haben. Sie können das entsprechende Video aufrufen, das Sie auf der Videoliste mit der Aufschrift Installation für Mac sehen Videoliste mit der Aufschrift Wenn wir uns also die anderen Ziele ansehen, müssen wir uns mit dem größten Lernhindernis Wir müssen verstehen, was das größte Lernhindernis ist, damit wir es angehen können. Und wir werden auch verstehen, wie unsere Fragen die Antwort sind. Als Nächstes werden wir mit der Installation von Python und dem, was wir brauchen , um unser Leben einfacher zu machen, fortfahren . Also ein paar andere Dinge, die wir installieren müssen. Und zum Schluss überprüfen wir die Installation und drucken unsere ersten Befehle auf den Bildschirm Gehen wir zum Lernbereich über. Okay, das größte Hindernis beim Lernen ist der Glaube , dass Sie es bereits wissen. Und das ist sinngemäß: Sobald wir die Barriere des Denkens gesenkt haben, dass wir bereits etwas wissen, öffnen wir unseren Geist, um neue Dinge zu lernen. Als Nächstes müssen wir wissen, dass wir aufgeschlossen sein müssen , um zu lernen. Weil der Geist nur funktioniert, wenn er offen ist. Es ist wie ein Fallschirm Es ist wirklich wichtig, dass wir weiterhin Fragen stellen. Wenn Sie während des Kurses Fragen haben, schreiben Sie sie auf, da es sehr wahrscheinlich ist, dass wir diese Fragen später im Laufe des Kurses beantworten. Ein weiterer Vorteil beim Stellen von Fragen besteht darin, dass Sie, wenn Sie eine Frage stellen, Ihren Geist darauf vorbereiten, nach Antworten zu suchen. Wann immer die Antworten kommen, Sie umso besser bereit, sie anzunehmen. Denken Sie an diesen Elefanten, der einschränkende Glaube ist , dass er sein Bein nicht befreien kann weil er versagt hat, als er klein war, aber diesen Glauben nie wieder in Frage gestellt hat. Selbst wenn es stark genug geworden ist, sich zu befreien, indem es ständig Fragen stellt anstatt sich mit Antworten zufrieden zu geben, ist es wahrscheinlicher, dass wir einschränkende Überzeugungen brechen Wenn Sie jemals gedacht haben, dass Sie Programmieren nicht lernen können, ist dies ein guter Zeitpunkt, um diese Überzeugung in Frage Denn was passiert mit deinem Gehirn, wenn du eine Frage stellst Es beschäftigt sich sofort mit der Frage und fängt in diesem Moment an, über mögliche Antworten nachzudenken diesem Moment an, über mögliche Antworten Das bedeutet , dass wir uns Fragen als Live-Antworten im gegenwärtigen Moment vorstellen Andererseits kann es sein, dass Sie, sobald Sie einer Frage eine Antwort zuweisen und sie von da an für bare Münze nehmen, daran gehindert mehr vom Gesamtbild zu sehen. Deshalb sind Fragen die Antwort. Denken Sie also daran und fahren wir mit der Installation fort. Um Python herunterzuladen, öffnen wir unseren Browser und suchen nach Python zum Herunterladen. Wir suchen nach der Python Dot-Website Hier ist sie, direkt unter dem Download-Bereich. Wir werden hier unten klicken, unter Download für Windows. Und das wird eine Datei herunterladen, die wir öffnen werden, sobald der Ladevorgang abgeschlossen ist. Dadurch wird die Installation gestartet. Wir werden dieses Kästchen ankreuzen, in dem es heißt Python-Pfad hinzufügen. Wir werden auf Installieren klicken. Jetzt eine Möglichkeit, das zu laden. Und dann können wir das schließen. Und jetzt installieren wir mit Python einen Computer. Das nächste, was wir tun werden, ist, dass wir unsere Befehlszeilenanwendung öffnen. Diese Anwendung funktioniert als Terminal zwischen uns und dem Computer. Das Terminal ist sehr nützlich , wenn wir mithilfe schriftlicher Befehle mit unserem Computer interagieren möchten . Hier können wir mit Dateien arbeiten und in Ordnern navigieren. Dafür können wir unser Terminal benutzen. Wir können das Terminal unter anderem verwenden um zu überprüfen, ob Sie Python korrekt installiert haben. Dafür werden wir die Python-Version ausführen, und das würde die Version von Python drucken , die wir gerade haben. Eine andere Sache, die Sie mit Ihrem Terminal tun können , ist, dass Sie Python ausführen können. Dazu geben wir einfach Python ein. Und geben Sie ein, was das bewirkt, ist, dass es einfach den Standardinterpreter von Python öffnet Und dieser Interpreter wird Repel REPL genannt, was für Read, Evaluate, Print Loop steht Das bedeutet einfach , dass die Umgebung Befehle liest und auswertet unsere Befehle liest und auswertet und sie dann auf dem Bildschirm ausgibt. Und mach das in einer Schleife. Die erste Funktion und der erste Befehl, den wir in Python lernen werden , ist die Druckfunktion. Dazu schreiben wir einfach print open round bracket und dann zwischen Anführungszeichen. Und Sie können einfache oder doppelte Anführungszeichen verwenden , was auch immer Sie bevorzugen. Hier schreibst du etwas Text auf. In diesem Fall schreiben wir Hello World auf. Dann schließt du das Zitat und dann die runde Klammer. Wenn Sie die Eingabetaste drücken, wird Hello World oder beliebiger Text, den Sie in die Druckfunktion eingegeben haben, auf dem Bildschirm gedruckt. Wenn wir schließlich den Python-Standardinterpreter in der Umgebung beenden wollen , schreiben wir einfach quit und runde Klammern auf und drücken die Eingabetaste Das nächste, was wir installieren werden, ist Python. Und Python ist einfach eine weitere Repl- und eine weitere Python-Umgebung Sehr ähnlich der Standardumgebung von Python, hat aber mehr Funktionen Und es ist eine erweiterte Version dieser Standardumgebung. Um Python zu installieren, werden wir Pip verwenden. Und der Befehl lautet wie folgt. Es wird Python installieren. Was Pip ist, ist, dass es ein Python-Paketmanager ist. Es verwaltet Module, die wir aus dem Internet auf unseren Computer herunterladen können aus dem Internet auf unseren Computer herunterladen Und wir werden uns später im Kurs mit Modulen befassen . Wenn wir also die Eingabetaste drücken, sehen wir, dass es auf unseren Computer heruntergeladen wird. Und jetzt, um Python auszuführen, geben wir einfach Python in das Terminal ein und drücken die Eingabetaste. Und das würde Ipython öffnen. Und wir haben jetzt eine andere Repl-Umgebung, die, wie ich erwähnt habe, einer Standardumgebung ähnelt Und wir können dieselbe Druckfunktion wie zuvor verwenden. Schreiben Sie also print hello world, Enter auf und wir werden Hello World auf dem Bildschirm sehen. Um Python zu beenden, geben Sie einfach Quit und Enter ein und Sie gelangen zurück zu Ihrem Terminal. Die dritte und letzte Sache , die wir herunterladen werden, ist Visual Studio-Code. Dafür suchen wir nach Visual Studio-Code oder VS-Code, laden sie herunter. Dann gehen wir auf die Website VisualStudio.com und suchen nach der Windows-Option Als Nächstes laden wir wie jede andere Anwendung herunter. Wir klicken einfach auf diese Datei, die wir heruntergeladen haben , und das Installationsprogramm wird gestartet. Wir klicken auf Die Vereinbarung akzeptieren. Klicken Sie auf Weiter und dann auf Weiter. Als Nächstes klicken Sie erneut auf Installieren und warten Sie, bis die Installation abgeschlossen ist. Jetzt haben wir VS-Code auf unserem Computer installiert. Sobald wir mit dem VS-Code fertig sind, können wir die Registerkarte Erste Schritte schließen und auf Datei, Neue Datei klicken. Dies würde uns zu einer Standard-Textdatei bringen. Und wir können einfach den gleichen Code schreiben , den wir auf dem Python-Interpreter geschrieben haben Drucken Sie Hallo Welt. Als Nächstes können wir klicken und unserer Datei einen Namen geben. Und stellen Sie sicher, dass wir es als Datei speichern, die dem Computer mitteilt, dass es ein Python-Skript sein wird. Sobald Sie die Datei gespeichert haben, werden Sie von VS Code gefragt, ob Sie die Erweiterung für Python herunterladen möchten , ob Sie die Erweiterung für Python herunterladen Wir werden sie darauf installieren. Und das wird eine Sekunde dauern. Dann haben Sie die Erweiterung installiert. Diese Erweiterung wird für uns nützlich sein, wenn wir Python-Code schreiben , da Sie einige Funktionen haben werden , die uns das Schreiben von Code erleichtern . Nehmen wir nun an, Sie öffnen VS-Code von Grund auf neu und möchten Ihre Hello World-Punktdatei finden. Was wir tun, ist, dass wir den Ordner öffnen, auf den Ordner klicken und ihn öffnen und wir schauen uns den Ordner an, in dem wir ihn für mich haben. Es ist der Teufelsordner für die Entwicklung. Ich öffne diesen Ordner und Sie können links sehen dass Sie den Explorer mit diesem Ordner und dem Inhalt haben. Und auf der rechten Seite haben Sie den Editor. Jetzt, wo wir auf unsere Hello-World-Datei geklickt haben, können wir sie im Editor sehen Was wäre, wenn wir diese Datei ausführen wollten ? Eine Möglichkeit besteht darin, die Befehlszeile zu öffnen, und wir werden einige sehr nützliche Befehle für die Befehlszeile lernen . Der erste Befehl ist CD, was für Change Directory steht. Wenn Sie ihn selbst eingeben, gibt er Ihnen das aktuelle Verzeichnis oder druckt das Arbeitsverzeichnis. Wenn Sie jedoch CD-Speicherplatz und dann einen anderen Ordner verwenden, werden Sie zu diesem Ordner weitergeleitet. In meinem Fall befindet sich die Helloworld-Datei im Entwicklungsordner Ich ändere das Verzeichnis in den Entwicklungsordner in dem, in dem ich mich gerade befand Dadurch werde ich in den Ordner verschoben, den ich haben möchte. Ein weiterer Befehl wäre der IR for directory , der den Inhalt des aktuellen Verzeichnisses auflistet. Hier können wir sehen, dass wir die Helloworld-Datei als auch den Ordner mit den Textdateien Und es ist dasselbe , was wir im VS-Code sehen. Wenn wir in den Textdateiordner wechseln wollten, könnten wir Textdateien im Verzeichnis ändern und dann DIR ausführen. Wir können sehen, dass wir ein paar Textdateien haben und es ist dasselbe , was wir im VS-Code sehen. Ein weiterer Befehl wäre die CD. Punkt. Voller Stopp. Und das bringt Sie in der Dateistruktur einen Schritt zurück Sie würden zum Entwicklungsordner zurückkehren. Da wir wissen, dass sich das Skript, das wir ausführen möchten, in diesem Ordner befindet, können wir den Befehl python space und dann den Namen der Datei verwenden , die wir ausführen möchten Und drücken Sie die Eingabetaste, und wir können sehen, dass das Skript ausgeführt wird. Ein letzter Befehl, der sehr nützlich ist, ist ein CLS-Befehl, der den Bildschirm löscht Es stellt sich auch heraus, dass VS-Code ein eingebautes Terminal hat. Als Feature können wir auf Terminal klicken und dann das Terminal öffnen. Dies funktioniert genauso wie die Befehlszeile. Wir können CD verwenden, wir können das Verzeichnis in den Textdateiordner wechseln. Wir können DIR machen, um zu sehen, was drin ist. Wir können einen Ordner zurückgehen. Wir können DIR machen, um sicherzugehen, dass wir zurückgegangen sind. Und dann können wir einen Python-Befehl verwenden , um unser Skript auszuführen. Und schließlich gibt es eine noch einfachere Möglichkeit, das Skript auszuführen , indem Sie oben rechts auf dem Bildschirm auf die Schaltfläche Anzeigen klicken . Und Sie sehen, dass das Skript unten ausgeführt wurde. Das wird für den heutigen Lernabschnitt reichen und wir sind bereit, mit der Zusammenfassung fortzufahren Wir haben gelernt, dass wir aufgeschlossen sein müssen , wenn wir schnell lernen wollen, und dass wir viele Fragen stellen und verstehen müssen wichtig Fragen sind und wie Fragen beantwortet Wir haben auch Python Three auf unserem Computer installiert , ebenso Python - und Visual Studio-Code. Visual Studio Code ist der Code-Editor. Schließlich haben wir unsere ersten Python-Befehle mit der Print-Funktion ausgeführt . Gehen wir nun zum Abschnitt „ Verstehen“ über. Im Abschnitt „Verstehen“ werden wir jeden Tag praktische Erfahrungen sammeln. Wir werden hier Fragen stellen, wir werden einige Übungen haben wir mit unserer Python machen können. Und jetzt für heute, die erste Frage ist, wie Fragen beantwortet werden können. Also möchte ich, dass du diese Frage beantwortest und über diese Frage nachdenkst. Als Nächstes möchte ich, dass Sie die Version von Python, die Sie installiert haben, über das Terminal auf Ihrem Bildschirm ausdrucken . Und dann drucke deinen Namen mit dem Standardinterpreter von Python Das würde bedeuten, die Druckfunktion zu verwenden und dann Ihren Namen und andere Wörter mit Python zu drucken. Drucken Sie abschließend Ihren Namen aus, indem ein Skript mit der Erweiterung py ausführen. Ich würde empfehlen, dafür VS-Code zu verwenden und diese Datei zu speichern. Das wird für heute passen, Leute. Vielen Dank für das Zuschauen. Denken Sie daran, wenn Sie Fragen haben, diese in den Kommentaren unten posten, diese in den Kommentaren unten posten damit die Community Ihnen helfen kann. Und wir sehen uns morgen wieder hier. 5. Tag 2 - Variablen: Begrüßen Sie meinen Freund am zweiten Tag und wir beginnen mit den heutigen Zielen. Der erste wird sein, dass wir uns mit Python-Variablen befassen werden. Als Nächstes untersuchen wir einen Schlüssel zum Lernen als Python-Objekte. Und schließlich werden wir unseren neuen besten Freund kennenlernen. Aber im Moment springt dies direkt in einen Lernbereich. In diesem Diagramm sehen wir eine Darstellung des Fortschritts im Laufe der Zeit. Wir können sehen, dass unsere Erwartungen tendenziell linear sind, während die Realität exponentiell ist. Am Anfang kann die Realität langsamer sein als unsere Erwartungen. Und das nennen wir den Wert der Enttäuschung. Und Sie können mehr darüber in James fühlt Buch Atomic Habits lesen . Jetzt hören die meisten Menschen in diesem Stadium auf, bevor sie erkennen , dass Lernen exponentiell sein kann und dass die Realität letztendlich die Erwartungen drastisch übertrifft. Konsistenz ist wichtig, denn ohne sie würden wir den Wert der Enttäuschung nicht überwinden. Deshalb ist ein Q-Learning immer wieder Konsistenz, da sich immer wieder Konsistenz die täglichen Zuwächse im Laufe der Zeit verschärfen und zu einem langfristigen exponentiellen Wachstum führen. Wenn Sie sich jeden Tag um 1% verbesserten, würde das eine Verbesserung von mehr als 37 x nach einem Jahr bedeuten . Was wäre, wenn ich dir sage, dass du dich aus diesen mundgerechten Bemühungen zur Gewohnheit machen und ihnen das Gefühl geben würdest, ein Slip und sie am Ende sogar zu genießen. Und das möchte ich mit diesem Kurs machen, um Ihnen hoffentlich zu zeigen, dass Lernen Spaß machen kann und dass wir jeden Tag wachsen können, indem wir den Prozess genießen. Das große Problem, nicht konsistent zu sein , ist, dass Sie, wenn Sie sich entscheiden, nicht zurückzukommen, Belohnungen für das, was Sie gesehen haben, nicht ernten werden. Es wäre, als würde man alle Anstrengungen unternehmen , um einen Apfelbaum zu pflanzen und anzubauen. Und dann komme ich jetzt zurück , um die Äpfel zu sammeln. Im Kurs beginnen wir absichtlich langsam und werden jeden Tag schrittweise beschleunigen. Wenn Sie der Meinung sind, dass dies langsam wird oder wenn Sie es zu schwer finden, denken Sie daran, dass es beabsichtigt ist und dass mundgerechte Anstrengungen plus Konsistenz des Patienten einem langfristigen exponentiellen Wachstum entsprechen. Da wir heute nichts anderes hinzufügen können, gehen wir zu Variablen über. Jetzt gehen wir auf das Python-Thema von heute ein. Wir werden auf Variablen eingehen. Eine Variable ist einfach ein reservierter Speicherort zum Speichern eines Wertes. Das ist es, was eine Variable ist. Und wir geben einen variablen benutzerfreundlichen Namen, der uns hilft zu wissen welche Art von Wert sie speichern Variablen ermöglichen, einen Wert zu erhalten und später erneut darauf zu verweisen, indem wir uns einen Wert zu erhalten und später erneut darauf zu verweisen einfach auf den Variablennamen beziehen, der gesucht werden soll reingehen und hier ihr Terminal abgeben. Was ich getan habe, war Command Space und tippe dann einfach Terminal ein und es bringt mich zu einer Terminalanwendung. Niemand macht Command Plus, Plus, Plus ein paar Mal, nur um es sichtbarer und nichtlinearer zu machen , gehe ich in iPython. Lösche den Bildschirm, nur damit wir nichts drin haben. Großartig. Um also Variable zu deklarieren, verwenden wir das Gleichheitszeichen. Wenn ich zum Beispiel meine Variable sagen möchte und ich sagen möchte, ist dies der Wert. Wann immer ich mich auf meine Variable beziehe, wird es auf den Wert verweisen, den sie in dieser Variablen enthält, und speichert ihn in dieser Variablen. Nehmen wir an, ich wollte eine Variable mit meinem Spieler finden. Wenn ich es dann täte, mein Spieler, könnte ich Ronaldo drucken, würde Rinaldo sagen. Sagen wir nun, dass ich den Wert zuweisen möchte. Ich möchte es dieselbe Variable behalten. Was ich möchte den Wert , den ich habe, in diese Variable ändern . Ich werde es einfach neu zuweisen. Chaotisch. Sagen wir einfach, mein Spieler ist chaotisch. Wann immer ich meinen Player erneut drucke, wird es chaotisch sagen, was der neue Wert ist, der dieser Variablen beigefügt ist. Was wäre, wenn wir versuchen würden, auf eine Variable zu verweisen , die wir noch nicht definiert haben? Weil wir wissen, dass in meinem Spieler bereits definiert ist. Aber sagen wir, wir haben so etwas wie meine Var ausprobiert. Was denkst du würde hier passieren? Wann immer wir versuchen, so etwas zu tun, erhalten wir einen Fehler, weil wir ihn noch nicht definiert haben. Das ist was für ein Bereich, das meine ich, dass du deinen neuen besten Freund kennenlernen würdest. Und ich sage Ihnen, dass Ihr neuer bester Freund unsere Fehler hat, nur weil wenn Sie einen Fehler bekommen, das bedeutet, dass Sie Ihre Komfortzone vorantreiben und etwas Neues lernen. Du willst, du willst es dir nicht sagen, kommen und dir sagen, Hey, du versagst das, weil du versuchst, etwas Neues zu lernen. So lesen wir dort und wir erhalten den Fehlertyp, der in diesem Fall ein Namensfehler ist. Dann erhalten wir die Fehlermeldung, die den Namen MyVar hat , nicht definiert ist. So würden wir diesen Fehler also lesen. Und wir werden uns später in diesem Kurs ausführlicher mit Fehlern befassen. Aber ich wollte dir nur deinen neuen besten Freund vorstellen , der dir sagt, dass du deine Komfortzone vorantreiben, dass du etwas Neues lernst. Aber noch eine Sache, die wir uns heute anschauen werden. Dass alles in Python ein Objekt ist. Wir werden in diesem Kurs mehr darüber erfahren. Aber für heute müssen Sie nur wissen, dass jedes Objekt eine Identität hat. Ich meine, Objekt hat einen Typ, es wird ein Objekt geben, das einen Wert hat. Das Wichtigste an den Identitäten, dass sich die Identität nicht ändert, sobald ein Objekt erstellt wurde . Um die Identität eines Objekts zu betrachten, verwenden wir die ID-Funktion. Das heißt, es ist normalerweise so. Wir schauen uns ein bisschen an, was eine Funktion ist und dann neulich während dieses Kurses. Aber der wichtige Teil dabei ist , dass wir sehen, wie wir eine Variable haben, nur eins ist. Wir wollten die ID der Variablen eins sehen. Wir würden, wir würden die ID-Variable eins machen und das würde uns die ID-Nummer dieser Variablen geben . Wir können uns diese Zahl als die Adresse vorstellen , die daran erinnert wird, dieser Variablen. Wenn wir zum Beispiel sagen, wir wollten eine andere Variable erstellen, Variable zwei, und wir wollten, könnten wir diese gleich einer variablen einrichten . Was würde passieren, wenn wir auf die ID-Variable, Variable zwei, verweisen ? Wir würden die gleiche Zahl erhalten, selbst wenn wir einen anderen Variablennamen betrachten, beide Variablen referenzieren dasselbe Objekt, das sich in dieser ID-Namensvariablen befinden , die auf dasselbe verweisen Objekt. Wir können einen Operator verwenden, der als Operator bezeichnet wird. Anstatt beispielsweise jede einzelne ID überprüfen zu müssen und prüfen, ob wir dieselbe Nummer zurückbekommen. Wir könnten die Variable eins machen. Variable zwei. Wir erhalten eine Werterückgabe zurück, die wahr sein wird, wenn sie dasselbe Objekt referenzieren. Ich wollte nur falsch sein, wenn sie nicht auf dasselbe Objekt verweisen. Wenn ich zum Beispiel eine dritte Variable erstelle, diese schrumpfende Zeichenfolge sagt, und dann sagte ich, dass eine Variable drei variabel ist, würden wir falsch werden. Schon wieder. Wir werden uns später in diesem Kurs mit diesen Arten von Variablen befassen. Aber im Moment ist dieser Operator wichtig, um zu verstehen, dass die ID ziemlich einer eindeutigen Zahl für jedes Objekt entspricht. Und Sie können sich vorstellen, dass BID die eindeutige Adresse im Speicher des Objekts ist, auf das Sie verweisen. Wir wissen bereits, wie man sich die ID-Variable ansieht und wie man den Wert einer Variablen wie dieser betrachtet. Also variabel eins, Variable zwei, Variable drei. Jetzt werden wir uns überlegen, wie den Typ der Variablen betrachten können. Und das ist einfach durch die Verwendung der Type-Funktion. Wir haben Variable eingegeben, die man bekommen würde, was der Typ ist, dasselbe für Variable zu dem Typ und dasselbe für Variable drei, was der Typ ist. Jetzt werden wir uns diese später ansehen. Im Moment können wir sehen , dass die ersten beiden int für integer sind und die dritte Variable STR oder string ist. Und noch einmal werden wir uns das später während des gesamten Kurses anschauen . Im Moment ist es jedoch wichtig zu verstehen, dass die type-Funktion den Typ des Objekts zurückgibt, das wir übergeben. Und schließlich sprechen wir ein bisschen über Variablennamen. Bei Variablennamen wird die Groß- und Kleinschreibung beachtet und nach Konvention sind sie alle Sie müssen mit einem Buchstaben beginnen und können Zahlen enthalten, aber nicht als erstes Zeichen. Sie können auch einen Unterstrich verwenden. Einige Beispiele für Variablennamen sind diejenigen, die wir bereits verwendet haben, oder sagen wir, Name könnte diesen Var-Namen verwenden. Sie können den Rückgabewert sehen, den Sie auch wie Nachname als Beispiel für einen Unterstrich-Namen verwenden können . Sie können Tier, Land 123 machen , egal welche Zahl Sie einfach können, das einzige, was Sie nicht tun können, beginnen Sie mit einer Zahl. Beginnen Sie per Konvention mit Buchstaben und mit niedrigerer Punktzahl. Ein Kuba-Lernen erinnert sich also an Konsistenz. Komm immer zurück, denn du wirst überrascht sein, wenn du dabei bleibst. Und wir wollen sicherstellen, dass wir das Tal der Enttäuschung durchqueren . Und das können wir nur tun , indem wir immer wiederkommen. Als Nächstes. Wir haben gelernt, dass alles in Python ein Objekt ist. Und die Optik hat einen Typ und eindeutige IDs und einen Wert. Sie können herausfinden, was der Typ ist und was die Idee mit diesen beiden Funktionen ist. Nützlich, dann sind Variablen einfach Beschriftungen, die auf ein Objekt zeigen , das irgendwo im Speicher lebt. Und Sie können den Operator ist verwenden , um zu sehen, ob zwei Variablen auf dasselbe Objekt zeigen. Darüber haben wir gesprochen. Wenn sie dieselben IDs haben, bedeutet das, dass es sich um dasselbe Objekt handelt, können Sie die Exalt-Periode verwenden oder sich das auch ansehen. Wir haben auch gelernt , dass bei Variablen die Groß- und Kleinbuchstaben berücksichtigt werden. Und sie beginnen mit einem Buchstaben und können eine Zahl enthalten, aber nicht als erstes Zeichen. Und schließlich haben wir erfahren, dass Scheitern dein bester Freund ist. Und wenn du nicht versagst, bedeutet das, dass du deine Grenzen nicht überschreitest. Sie möchten sicherstellen , dass Sie sehen dass rote Fehler auftreten , weil das tatsächlich bedeutet, dass Sie etwas Neues lernen , und das ist wirklich großartig. Der heutige Abschnitt „Verstehen“. Der erste ist, was ist ein Schlüssel zum Lernen? zweite Frage ist, verschiedene Variablen zu definieren und auf den Bildschirm zu drucken. Drittens verwenden Sie den Operator ist , um zu sehen, ob zwei Variablen identisch sind. Verwenden Sie dann schließlich die ID- und die Type-Funktionen, um die ID bzw. den Objekttyp abzurufen. Und versuche das mit einer solchen Zeichenfolge und mit einer solchen Zahl. Dies sind die vier Fragen für heute. Und viel Glück dabei. Und wenn Sie Fragen haben, zögern Sie nicht, im Chatbereich zu fragen und wir werden dort mit einer Community aktiv sein. Viel Glück und wir sehen uns morgen. 6. Tag 3 - Saiten: Willkommen am dritten Tag. Das erste Ziel für heute ist es, sich mit der Vergessskurve zu befassen und warum wir jeden Tag mundgerechte Sitzungen durchführen. Dann schauen wir uns Strings, String-Indizes , Strings und Variablen an. Und schließlich werden wir uns anschauen, wie man Strings auf den Bildschirm druckt. Es stellt sich heraus, dass es Studien gibt , die besagen, dass wir innerhalb von 24 Stunden nach dem Erlernen zwischen 70 und 80% dessen vergessen, was wir gelernt haben. Deshalb scheint es für die Prüfung zu funktionieren , alles am Vortag zu lernen, einen All-Nighter zu ziehen und dann alles in die Prüfung aufzuteilen einen All-Nighter zu ziehen und dann alles in die Prüfung aufzuteilen. Aber vielleicht bemerken Sie , dass das meiste von dem, was Sie gelernt haben, danach einfach verschwindet. Zum Glück lernen wir hier den intelligenten Weg, da wir wissen, wie wir die Vergessskurve zerquetschen und das Gelernte zum Stick bringen können . Wir können viel effektiver lernen , indem wir das Konzept, das wir mehrfach gelernt haben , über immer längere Zeiträume überdenken. Dies nennt man Abstandwiederholung, und deshalb ist dieser Kurs strategisch so gestaltet, wie es 15 Minuten bewusstes und fokussiertes Lernen jeden Tag für 30 Tage ist erheblich besser als die äquivalenten 7,5 Stunden an einem einzigen Tag, was stopfen würde. Cramming ist nicht wirksam , da Ihr Gehirn nicht absorbiert. Und denken Sie an fast genauso viele Informationen im Vergleich zu verteilten mundgerechten Sitzungen. Wenn Sie erneut besuchen, wo Sie im Laufe der Zeit lernen, hält Ihr Gehirn diese Informationen wichtig und stärkt die neuronalen Verbindungen im Zusammenhang mit diesem Lernen mit dem Ziel, die Arbeit zu erleichtern und reduziert die Arbeit. nächste Mal, wenn es kommt , denken Sie darüber nach. Neuronen, die zusammenfeuern, verdrahten sich, aber dies wird erst nach einiger Qualität Ruhe und Erholung geschehen . Das heißt, wenn Sie heute etwas lernen und dann bald nach dem Schlafen einen weiteren Tag wiederkommen , gut essen, entspannen und trainieren. Sie werden feststellen, dass Sie, wenn Sie zurückkommen, die Dinge erheblich besser machen als beim letzten Mal. Und jetzt gehen wir zu Strings über. Strings sind Objekte, die Text in Python darstellen sollen. In der vorherigen Übung, wo immer die Textvariablen , die wir zugewiesen haben, diejenigen, die alle Strings sind. Um eine Zeichenfolge zu erstellen, können wir entweder einfache Anführungszeichen oder doppelte Anführungszeichen verwenden . Zum Beispiel können wir sagen, String eins gleich zwei. Ist eine Zeichenfolge. Dies wäre mit einfachen Anführungszeichen. Wir können sehen, dass wir diese Variable einem Stream zuweisen. Wir könnten auch Stärke machen. Dies ist eine andere Zeichenfolge mit doppelten Anführungszeichen und wir können sie auf die gleiche Weise verwenden. Es ist also das Gleiche. Wir können die Regisseure und andere Zeichenfolgen sehen. Stellen Sie einfach sicher , dass Sie bei der Verwendung einzelner Anführungszeichen diese , dass Sie bei der Verwendung einzelner Anführungszeichen in Ihrem Code konsistent halten. Wenn Sie doppelte Anführungszeichen verwenden, halten Sie es mit was konsistent, wenn Sie Anführungszeichen innerhalb einer Zeichenfolge verwenden möchten? Nehmen wir an, Sie wollten es mit dem Wort „Ihr“ speichern. Sie schließen STR ein, String eins. Sagen wir, dass du das machst. Du siehst, dass das nicht funktioniert, weil die Dinge , die du in der Zeichenfolge nahe bist. Um dies zu vermeiden, können wir das zum Laufen bringen. Wir können einfach das Escape-Zeichen hinzufügen, kurz bevor ich Python-Knoten zitiert habe, und es wird entkommen , dieses Zitat, wird es nicht berücksichtigen. Und dann würde es es als Textliteral verwenden und es zu Ihrer Zeichenfolge hinzufügen. Wann immer wir String One drucken, können wir sehen, dass es Ihr ist. Wir könnten auch doppelte Anführungszeichen verwenden , um zu vermeiden, dass wir einen umgekehrten Schrägstrich verwenden müssen. Also könnten wir String eins sagen, du bist gleich deinem. Und so. Sie können das gleiche Ergebnis auch erzielen, ohne das Escape-Zeichen verwenden zu müssen. Aber was wäre, wenn Sie ein Zitat in einem Zitat hätten? Wenn du zum Beispiel sagst, ich sagte, du bist der Beste, dann brauchst du in diesem Fall einen Close und Charakter. Du bräuchtest hier einen umgekehrten Schrägstrich. Wenn Sie dann die Zeichenfolge eins drucken, erhalten Sie die Zeichenfolge, die Sie erhalten möchten. Sie sagte: Hi, du bist der Beste. Sprechen wir nun für eine Sekunde über die String-Indizierung. Das ist ja, Zum Beispiel hast du ein Land mit einer Schnur, Neuseeland. Neuseeland. Jetzt können Sie jeden aufrufen, jeder Buchstabe der Zeichenfolge wird ein Index in dieser Zeichenfolge sein. Du hast Country gesagt und du wirst den Index mit dem eckigen Klammer-Format aufrufen . Wenn du also Country sagst. Ist 0. Verweisen auf diesen Z-Index mit der Referenz 0 in dieser Zeichenfolge. In diesem Fall ist es Dn, weil es sich um ein nullbasiertes Referenzland handelt. Lassen Sie uns ein einziges Beispiel machen , das über einem Referenzbeispiel steht. Du würdest den nächsten Index bekommen. Wenn du mit drei fertig bist, ist der nächste ein Leerzeichen und so weiter. Sie könnten auch negative Indexindizes verwenden. Wir haben unser Variable Land, das Neuseeland hat. Nun, wenn wir ein Land referenzieren, hat das negative, was erwarten Sie von hier? Genau? Also würden wir die letzte Nummer bekommen, die letzte Zahl. Wenn wir negative zwei gemacht haben, bekommen wir das zweitletzte. Es ist also eine Art, vom Ende an zu beginnen. Wenn wir wissen, dass wir eine 0 verwenden könnten , um den ersten Wert zu erhalten , könnten wir negativ werden und so weiter. Wohin wir gehen könnten plus eins und hingehen. Dachte das nächste Zitat von Anfang bis Ende oder von Ende bis Anfang. Es ist auch nützlich zu wissen, dass wir diese beiden Variablen zuweisen können , wenn Sie wissen, ob Sie ein Land haben, sagen wir den ersten Buchstaben. Das ist meine neue, meine neue Variable. Und dann könnte ich sagen: Okay, Country. Da wir nach dem ersten Buchstaben suchen, möchten wir, dass er der 0-Index ist . Dann beziehen wir uns auf den Buchstaben , der n. Wenn wir uns Land, Neuseeland, perfekt ansehen , ist genau das, wonach wir suchen. Großartig. Das war es also für die heutige Lernsitzung. Jetzt lasst uns eine Zusammenfassung machen. Wir haben zuerst erfahren, dass wir das meiste von dem vergessen , was wir gelernt haben, als wir gerade gelernt haben, als ich die Vergessskurve in der Grafik gezeigt habe, die ich Ihnen gezeigt habe. Aber wir können diese Vergessenskurve vernichten, indem wir Weltraumwiederholungen für unser Lernen implementieren . Und genau das machen wir in diesem Kurs. Als nächstes wollten wir innere Stärke erreichen. Wir haben gesehen , dass Strings Objekte sind, die Text in Python darstellen. Sie können einfache Anführungszeichen oder doppelte Anführungszeichen verwenden , um Strings zu erstellen. Sei einfach konsistent , um deinen Code zu halten. Um dann Anführungszeichen innerhalb der Zeichenfolge hinzuzufügen , können wir das Escape-Zeichen beibehalten oder auch als umgekehrter Schrägstrich bezeichnet werden. Strings haben Indizes, beginnen bei 0 für das erste Zeichen. Sie können negative Indizes verwenden, um die letzten Zeichen auszuwählen und beginnend mit dem letzten und so weiter. Sie können diese Zeichenfolgen Variablen zuweisen und diese Variablen dann mit der Druckfunktion auf den Bildschirm drucken. Süß. Jetzt sind wir bereit für den Abschnitt „Verstehen“ für heute. Jetzt ist die erste Frage, wie zerquetschen wir die Vergessskurve? Weisen Sie als Nächstes eine Zeichenfolge mit dem Text, den ich bin Programmierer, einer Variablen namens MyString one zu. Weisen Sie der Variablen MyString zuvor dasselbe Texas zu, wechseln Sie jedoch die von Ihnen verwendeten Anführungszeichen ab. Sie verwenden Single, verwenden ein Double und umgekehrt. Die vierte Frage ist der Druck beider Strings auf den Bildschirm. Gibt den Typ und die ID jeder Zeichenfolge aus. Benutzen Sie das ACE betrieben. Finden Sie heraus, ob die Variable auf dasselbe Objekt zeigt. Die fünfte Frage ist, erstellen Sie eine Variable namens MyString drei. Ich weise dieses neue Label zu, das Objekt innerhalb der Variablen myString, eins aus Schritt eins. Hinweis, dass Sie hier keinen Text schreiben oder Anführungszeichen verwenden müssen , nur Variablennamen und den Gleichheitsoperator. Dann besteht die letzte Frage darin alle drei Variablen von Schritt 124 auf den Bildschirm zu drucken und ihren Typ in ID und sie mit dem Operator miteinander zu vergleichen. Schreiben Sie alle Fragen auf , die Sie möglicherweise haben und die möglicherweise aufgetaucht sind, und konsultieren Sie sie heute Abend mit Ihrem Kissen. Zehn werden das morgen überprüfen. Sie können den Chat auch erneut verwenden. Sie können den Community-Bereich verwenden, um Fragen zu stellen, und wir werden dort aktiv sein. Viel Glück und wir sehen uns morgen wieder. 7. Tag 4 - Funktionen (1/2): Willkommen bei Day für die heutigen Ziele geht es darum, etwas über gebindestrichene Funktionen zu lernen. Werde in Python-integrierte Funktionen schauen. Wir suchen nach benutzerdefinierten Funktionen. Und schließlich, verflochten mit allem, was wir suchen , welcher Code unsere Funktion blockiert , ist einfach ein Verweis auf einen Code, der ausgeführt wird, wenn Sie diese Funktion aufrufen. Denken Sie an eine Funktion ähnlich wie eine Variable. Sobald Sie die Funktion definiert und ihr einen Namen gegeben haben, können Sie diesen Namen später verwenden, um diese Funktion aufzurufen. Mit anderen Worten, Sie rufen eine Funktion nach ihrem Namen auf, und dies würde den Code innerhalb dieser Funktion ausführen. Es gibt einige Funktionen, die bereits in Python enthalten sind, und wir müssen diese Funktionen nicht selbst definieren. Und diese werden als integrierte Funktionen bezeichnet. Perfektes Beispiel für eine integrierte Funktion ist die Druckfunktion, die Sie in einer Zeichenfolge übergeben und sie auf den Bildschirm drucken. Sie müssen jedoch definieren, was die printf-Funktion tun wird. Das bedeutet also, dass Druck eine integrierte Funktion ist. Andere Beispiele für integrierte Funktionen werden gesampelt. Die Len-Funktion. Lassen Sie mich zuerst eine Zeichenfolge definieren. Ich kann die Len-Funktion verwenden , um herauszufinden, wie lange ich vorbeigehe. Sie können also eine Zeichenfolge übergeben, wissen Sie, wenn Sie sie übergeben, sehen Sie sieben, weil es sieben Zeichen gibt. Industrie. Andere Beispiele für integrierte Funktionen oder die Typfunktion. Wir haben schon einmal darüber gesprochen. Also sagt es mir, okay, es ist eine Typzeichenfolge, das Objekt, das in dieser Variablen enthalten ist. Wir können auch BID-Funktion haben, wie wir bereits erwähnt haben. Das sagt Ihnen das Äquivalent des Speicherorts im Speicher dieser Variablen, dieses Objekts, tut mir leid. Dann können wir auch ihre zwei neuen Funktionen haben , die wir verwenden können, die zum Debuggen nützlich sind, nämlich die Funktion, die für directory steht. Werde verstehen, was diese Ausgabe später in diesem Kurs bedeutet. Die Liebe, Lieber für die Verzeichnisfunktion. Und dann gibt es auch die Hilfefunktion. Die Funktion gibt Ihnen, gibt Ihnen einige keine Dokumentation. In diesem Beispiel für diese Variable haben wir dafür keine Dokumentation. Aber wir können, wir können die Hilfefunktion auch zum Debuggen verwenden , Sie könnten alle integrierten Python-Funktionen finden, indem Sie einfach die Online-Dokumentation nachschlagen. Sehen wir uns die eingebauten Python-Funktionen an. Und los geht's. Hier habe ich eine Liste dessen, was sie sind und was sie tun. Wenn wir zum Beispiel zur Druckfunktion gehen, erhalten wir eine detaillierte Beschreibung dessen, was die Druckfunktion Dollar enthält. Wir können unsere eigene Funktion mit der folgenden Syntax erstellen. Sie können DEF für die Def-Definition verwenden. Und dann hast du den Funktionsnamen. Und wir nennen diese Funktion meine Funktion. Dann benutze die runden Klammern und dann einen Doppelpunkt. Wenn Sie die Eingabetaste drücken, werden Sie feststellen , dass es, wenn Sie Ipython verwenden , die Einrückung für Sie erledigt, aber Sie müssten in diesem Fall eine erzwungene Grundlage hinzufügen . Und hier wäre es, hier wäre es, wie der Codeblock aussehen würde. Der Funktionscodeblock. Wann immer ich auf diese Funktion referenziere, ist dies der Code, der ausgeführt wird. In diesem Fall verwende ich die vergangene Anweisung, weil ich nicht möchte, dass die Funktion etwas tut. Ich wollte einfach nur bestehen. Immer wenn ich meine Funktion ausführe, läuft dieser Code. Und es macht in diesem Fall einfach nichts , weil es einfach eine nicht-quadratische Funktion übergibt , die Hi sagt und dann den Namen druckt. Lass uns Def machen. Sag print. Dann sagen wir print. Laufen Sie aus. Wann immer ich es tue. Krawatte drucken Und Sie rufen eine Funktion mit den runden Klammern auf, Sie werden sehen, dass der Code ausgeführt wird. In diesem Fall werden Sie sehen, dass wir die Klammern verwenden, aber wir würden dieser Funktion keine Attribute zur Verfügung stellen , wie wir es getan haben, wenn wir mit der print-Anweisung gedruckt haben, wir geben eine Zeichenfolge an. Damit es eine Zeichenfolge druckt. Wir können sehen, dass jedes Mal, wenn wir diese Funktion ausführen , die wir ohne irgendwelche Variablen definiert haben , immer noch den Code ausführt , den die Funktion hat. Sie können Ihrer Funktion optional einen Doc-Stream hinzufügen. Du würdest das so machen. Du erstellst deine Funktion. Dann fügen Sie direkt darunter ein dreifaches Zitat hinzu. Dann wäre dies der Doc-String. Eine Doc String. Während für die Dokumentation. Wenn Sie immer dann verwenden, wenn Sie Funktionen in Ihrem Code erstellen , ist dies nützlich für jeden, der versucht, Ihren Code zu lesen, um zu verstehen, was die Funktion tut. Dies funktioniert wieder für die Dokumentation. Nehmen wir auch an, dass wir eine Funktion verwenden wollten, aber wir wollten einen Wert haben, den Garmin , der in diese Funktion eingeht. wir zum Beispiel einen Namen und einen Nachnamen an. Vorname, Vorname, Name und Nachname. Und dann sagen wir Print. Wir werden Hallo sagen. Und dann zuerst FirstName, LastName. Diese Funktion wird tun, was immer wir sie Meine Funktion nennen. Wir können sagen, sagen wir chaotisch. Dann weiß die Funktion, dass der FirstName ein erstes Argument ist, dann ist der zweite Name, der Nachname ist ein zweites Argument für diese Funktion und Sie können diese Variablen in Ihrer Funktion referenzieren. Schließlich können Sie, wie ich bereits erwähnt habe, die Hilfefunktion verwenden, um einer integrierten Funktion zu helfen , einige der Variablen zu untersuchen, die Sie haben. In diesem Fall ist es die Funktion. Wenn Sie also die Hilfefunktion verwenden, gelangen Sie zu einem Bildschirm und es gibt Ihnen den Namen der Funktion. Der Name des Attributs ist eine Funktion, die aufnimmt. Und schließlich wäre dies der Hunde-Bell Stream, die Dokumentation. Wenn Sie eine Dokumentation für Ihre Funktion hätten, könnten Sie diese nicht über die integrierte Hilfefunktion sehen . Und um hier zu verlassen, drücken Sie Q und es bringt Sie zurück. Habe ich Python? Ich kam zu spät zum Lernbereich. Und jetzt lasst uns eine Zusammenfassung machen. Eine Funktion ist einfach ein Codeblock , der immer dann ausgeführt wird , wenn diese Funktion aufgerufen wird. Und Funktionen werden nach ihrem Namen aufgerufen und verwenden runde Klammern wie diese. Python verfügt über integrierte Funktionen , die immer einsatzbereit gelesen werden. Zum Beispiel ist die Druckfunktion die erste, die wir gelernt haben. Dann haben wir die Len-Funktion, um die Länge eines Objekts zu ermitteln. Sie haben dort die Typfunktions-ID für das Verzeichnis. Und dann die Hilfefunktion. Sie können die Python-Dokumentation für die vollständige Liste der Funktionen sehen . Dies ist der Link, den ich Ihnen zuvor gezeigt habe. Wir können unsere eigenen Funktionen definieren, indem wir DEF und meinen Funktionsnamen, runde Klammern und Semikolon verwenden. Und dann der entsprechende Codeblock darunter, wo Sie einen eingerückten Codeblock unter der f-Funktion haben , dem es sich um einen Code handelt, der ausgeführt wird. Wir können auch Zeichenfolgen punkten , die mit dreifachen Anführungszeichen funktionieren könnten. Und dann gibt uns die Hilfefunktion, die integrierte Hilfefunktion die integrierte Hilfefunktion, nützliche Informationen über verschiedene Python-Objekte , die Funktionen enthalten. Um dann eine Funktion zu definieren , die Argumente aufnimmt, können wir sie der Definition hinzufügen. So. Wir machen die Definition, die Sie innerhalb des Namens machen. Und dann fügen Sie innerhalb der runden Klammern die Argumente hinzu. Und dann können Sie diese Argumente innerhalb des Codeblocks oder innerhalb der Funktion referenzieren innerhalb des Codeblocks , die Sie verwenden können. Regal mit dir verstehst Abschnitt. erste Frage besteht darin, ein Objektiv und die integrierten Druckfunktionen zu verwenden , um die Länge dieser Zeichenfolge zu drucken. Die zweite ist eine Funktion namens Lesen definiert , die jede Begrüßung auf den Bildschirm ausgibt. Definieren Sie dann eine Funktion namens add, die zwei Ganzzahlen akzeptiert Princeton zum Ausscheiden hinzufügt. Und schließlich, um die integrierte Funktion Ihrer beiden neuen Funktionen zu unterstützen. Wenn Ihre Funktion keine Docstrings hatte, Docstrings-Studenten und führen Sie die Hilfefunktion erneut aus und sehen Sie den Unterschied. Aber genial. Viel Glück dabei. Und wenn Sie Fragen haben, Sie sie gerne im Chat stellen. Und wir sorgen dafür, dass wir dort in der Community aktiv sind. Danke nochmal und wir sehen uns morgen. 8. Kurseinheit 5: Willkommen zurück. Mein Freund. Heute ist eigentlich ein Ruhetag. Wir haben heute ein paar Tage hintereinander unsere Grenzen überschritten heute ein paar Tage hintereinander unsere Grenzen überschritten . Was wir tun werden , ist das Gelernte zu klären und uns ein wenig auszuruhen. Ich möchte, dass du zu den Übungen zurückkehrst und sicherstellst , dass du alles, was wir bisher gelernt haben, verinnerlicht hast. Und schließlich möchte ich Sie nur an die drei Schlüssel zum effektiven Lernen erinnern . Wir haben bisher nach Fragen oder der Antwort gesehen. Nun, wir wissen, dass Sie, wenn Sie radikal aufgeschlossen werden, viel mehr Fragen stellen, was Sie zu besseren Antworten bringt, dann ist es von Anfang an schwer, Fortschritte zu erkennen. Aber wenn Sie immer wieder zurückkommen und mit der Konsistenz übereinstimmen, werden Sie überrascht sein, was Sie erreichen können. Und schließlich sahen wir das Konzept der Bühnenwiederholung. Wie wir die Kurve vernichten können, indem wir uns nicht nur einmal mit den Konzepten vertraut machen, sondern stattdessen auf das reagieren, was Sie gelernt haben, Laufe der Zeit verteilt. Und auf diese Weise können wir es schaffen , effektiver zu lernen. Das war's also für heute. Ich hoffe, du bekommst einen guten Ruhetag für heute und wir sehen uns morgen wieder. 9. Tag 6 - Objektorientierte Programmierung (OOP) - Methoden: Willkommen am sechsten Tag. Die heutigen Ziele müssen wir also sehen, was Anfängerverstand ist. Wann immer wir uns mit objektorientierter Programmierung befassen , werden wir sehen, dass in Python alles ein Objekt ist. Dann werden wir sehen, dass Objekte Daten, Attribute und Funktionen enthalten können, wenn Methoden direkt in die Lernsitzung springen. Anfängerverstand bedeutet, sich dem Lernen durch eine neue Perspektive zu nähern und die Dinge so zu sehen, wie es ein Anfänger tun würde. Es gibt eine Wahrnehmung, die zur Basis geht. Hindernis für das Lernen ist der Glaube, dass Sie es bereits wissen. Das Annähern an das Lernen mit einem frischen Augenpaar hindert Sie daran, sich diesem Hindernis zu stellen. Also lade ich Sie ein, jeden Tag mit Anfängern zu diesem Kurs zurückzukehren mit Anfängern zu diesem Kurs damit Sie das Beste daraus machen können. Wir wissen auch von früher, dass Python eine objektorientierte Programmiersprache ist . In Python ist alles ein Objekt, und Objekte können Daten über Attribute und Funktionen durch Methoden enthalten . Wir haben schon gesehen, dass wir wissen , dass Objekte einen Typ haben können. Wenn wir also eine Variable erstellen, die dieser Zeichenfolge entspricht, können wir diesen Typ von Variable eins sehen. Wir können sehen, dass es sich um eine Zeichenfolge handelt, weil wir hier oben Texte in Anführungszeichen zugewiesen haben. Wenn wir die Variable eins drucken wollten, könnten wir den Wert dieses Objekts sehen. Dies wäre ein Objekt und dies wären einige Daten, die an dieses Objekt angehängt sind. Und genau das zeigt die Druckfunktion, dass wir uns dies als Daten vorstellen können, die an ein Objekt gebunden sind. Abgesehen von Daten, die an ein Objekt angehängt sind, können wir sehen, dass Objekte auch über Methoden Funktionalität haben können . Sie können sich eine Methode einfach als eine Funktion vorstellen , die zu einem Objekt gehört, um eine Methode aufzurufen, wir verwenden die Punktnotation kombiniert mit der Syntax, die wir verwenden, um unsere normale Funktion aufzurufen. Zum Beispiel. Zum Beispiel wären wir meine Variable, meine Methode. Wenn wir natürlich eine Variable namens myvariable und eine Methode namens my method definiert hätten eine Variable namens myvariable und eine Methode namens my method definiert . Aber für dieses Beispiel, verwenden wir die Variable eins, die wir haben und wir wissen, was eine Zeichenfolge ist. Für die Variable eins könnten wir ein Beispiel für eine String-Methode verwenden , die Upper genannt wird. Was diese Methode tut, ist, dass sie eine Zeichenfolge benötigt und die Zeichenfolge mit jedem einzelnen Buchstaben in Großbuchstaben zurückgibt. Ein anderes Beispiel ist die titel-Methode. Welches Großbuchstabe X ist nur der erste Buchstabe jedes Wortes in der Zeichenfolge. Schließlich ist ein anderes Beispiel die Count-Methode. Es liegt ein Fehler vor, da er eine Eingabe benötigt. Die Count-Methode nimmt also tatsächlich eine Eingabe auf, es ist das, was wir in dieser Zeichenfolge zählen möchten. In diesem Fall möchte ich den Buchstaben I speichern und es sagt mir eine Nummer zwei. Nummer zwei, weil unsere beiden Augen und diese Saite, diese Saite, zwei Augen haben. Wir können die Gegend sehen, die wir haben. Wir haben einen Typfehler mit dem Konto mit der Nachricht erhalten. Das war's. Count nimmt mindestens ein Argument und 0 wo gegeben, so wusste ich, dass ich ihm ein Argument geben musste, so habe ich es geändert. Und ich habe gelernt, dass die Count-Methode ein Argument aufnimmt und eine Anzahl von zwei für diese spezifische Eingabe zurückgibt , die wir für R1 verwenden können. Wir können die Dir-Funktion verwenden, die ein Objekt erhält und es wird eine Liste aller darin enthaltenen Methoden zurückgeben. Wenn wir es genau hier für den VAR machen, können wir sehen, dass wir alle Methoden haben, die in diesem Objekttyp enthalten sind. In diesem Fall ist es eine Zeichenfolge. Wir können den Impfstoff sehen, wir haben einen niedrigeren , der für jeden einzelnen Buchstaben in der Schnur niedriger ist. Wir haben die Zählung, als wir es gerade benutzt haben. Wir können auch kapitalisiert sehen. Wir können jede einzelne Methode sehen, die es hat. Und im Moment können wir diejenigen ignorieren , die mit zwei Unterstrichen begonnen haben, das später untersuchen werden. Hier können wir jede einzelne Methode sehen, die es hat. Sie können es als Referenz verwenden. Sie können es dort benutzen, die Dir-Funktion. Großartig. Lassen Sie uns jetzt eine Zusammenfassung machen. Nähern Sie sich zunächst Erfahrungen mit dem Verstand eines Anfängers. Es wird immer einen Weg geben, den wir noch nie zuvor zurückgelegt haben und diese Wege suchen und Sie werden nie aufhören zu lernen. Als Nächstes haben wir erfahren, dass alles in Python ein Objekt ist. Objekte können durch Methoden funktionell sein. Jedes Objekt hat einen Typ, und wir können sehen, dass die Verwendung der type-Funktion und jedes Typs eigene Methoden haben wird. Methoden werden unter Verwendung der Punktnotation aufgerufen. Also hast du zuerst das Objekt und dann die Methode mit runden D-Klammern. Einige String-Methoden sind niedrigeres Kapital, netter Titel , oberer Streifen, lstrip, rstrip, count, split, replace. Wie ich bereits erwähnt habe, können wir eine Dir-Funktion verwenden, um eine Liste aller Methoden in einem Objekt zu erhalten. Wenn wir Fragen zu jeder Methode haben, können wir uns die Python-Dokumentation ansehen. Aber wir werden in diesem Kurs schauen und den am häufigsten verwendeten einmal in denen, in denen Sie am meisten verwenden würden, wir haben jetzt den Abschnitt „ Verstehen“. Die erste Aufforderung besteht darin, zu bemerken wie es sich anfühlt, Python zum ersten Mal zu lernen. Und wie können Sie diese Perspektive in Ihre täglichen Erfahrungen einbeziehen? nächste Variable namens MyVar und setze sie auf Leerzeichen, Leerraum. Entdecken Sie, was Ihnen Raum, Raum, Raum gefällt, und verwenden Sie die Type-Funktion um den Objekttyp zu ermitteln, um den es sich handelt. Dann verwenden Sie die Funktion dir, um eine Liste aller für dieses Objekt verfügbaren Methoden abzurufen. Verwenden Sie die Punktstreifen-Methode, um die zusätzlichen Leerzeichen aus der Zeichenfolge zu entfernen und die neue Zeichenfolge meinem VAR neu zuzuweisen. Verwenden Sie als Nächstes die Replace-Methode, sie durch Leerzeichen zu ersetzen, und weisen Sie dies meiner var zu, normalerweise niedrigerem Großbuchstabtitel und oberen Methoden, um die verschiedenen Ausgaben zu sehen. Großartig. Hoffentlich finden Sie diese ein bisschen herausfordernd, aber nicht zu herausfordernd. Und wenn Sie Fragen haben, können Sie diese jederzeit im Chat posten und es wird dort in der Community aktiv sein. Nochmals vielen Dank fürs Zuschauen und wir sehen uns morgen wieder. 10. Tag 7 - String: Willkommen zurück. Heute sieben. Schauen wir uns die heutigen Ziele an. Wir werden uns ziemlich genau ansehen , was wir sonst noch von der anderen Phonologie lernen können. Dann schauen wir uns die String-Verkettung und schließlich die String-Formatierung an. Lasst uns in den Lernbereich springen. Gehen wir also für eine Sekunde zum ELF und zur Analogie zurück und denken Sie daran, dass Fragen die Antwort sind. Jedes Mal, wenn Sie sich generell eine Frage mit dem Verstand eines Anfängers stellen, Ihr Gehirn mit Neuheit zum Leben erweckt und Sie finden möglicherweise Wege, die Sie noch nie zuvor durchgemacht haben. Sie erhalten eine genauere Wahrnehmung der Realität im Vergleich zum letzten Mal, als Sie sich dieselbe Frage gestellt haben. Wenn Sie sich mit einer einzigen Antwort zufrieden geben, schließen wir den Fingertipp auf Lernen, da Antworten immer ein Fragment sein werden, das die Realität darstellt. Stellen Sie Fragen und schreiben Sie sie auf. Wenn Sie bestimmte Fragen stellen, nehmen Sie die Antworten auf, wenn sie kommen. Es gibt einen Teil des Gehirns, der als retikulär aktivierendes System bezeichnet wird , oder RAS, der als Pförtner von Informationen fungiert. Ohne sie wären wir überwältigt von der enormen Menge an Informationen, die wir überall um uns herum haben. Die RAS lässt uns also unsere Aufmerksamkeit fokussieren. Sie können sich diesen Teil Ihres Gehirns also als Löschgerät vorstellen und Sie müssen ihm sagen, was Sie nach ihm suchen sollen. Fragen werden Ihr Gehirn dazu bringen, sich auf die Antworten zu konzentrieren , wenn sie erscheinen. So sagt man seinem Gehirn, worauf es achten soll. Während dieses Kurses kannst du dir Fragen stellen wie: Warum lerne ich Python? Und die Antwort darauf könnte gut sein, Ihr Gehirn zu trainieren und neue neuronale Verbindungen herzustellen oder mehr Perspektive darauf zu gewinnen, wie die Welt, die digitale Welt, die überall um uns herum funktioniert. Oder um irgendwann einen hochbezahlten Job zu finden. Also Entwickler, das sind alles gute Gründe. Fragen Sie sich also, warum Sie Python lernen. Eine andere gute Frage könnte sein, wie kann ich dieses neue Konzept verwenden, das ich heute lerne? Oder wie kann ich diese beschleunigten Lernkonzepte auf andere Fähigkeiten in meinem Leben anwenden ? Es ist also gut, all das im Hinterkopf zu behalten. Und jetzt gehen wir auf das Python-Thema von heute ein. Jetzt schauen wir uns die String-Verkettung an. Dies bedeutet einfach nur Strings aneinander anzuhängen. Wir fügen einander Strings hinzu. Das ist also einfach wie nur das Pluszeichen zu verwenden. Zum Beispiel können Sie diese Pluszeichenfolge verwenden und diese dann in eine Zeichenfolge drucken. Beachten Sie, dass wir kein Leerzeichen darin haben, da wir keine Leerzeichen zwischen den Strings hinzugefügt haben. Wenn wir also Abstand haben wollten, müssen wir ihn buchstäblich zu einer Zeichenfolge hinzufügen , um den Abstand auf den Bildschirm zu drucken. Sie können auch Variablen auf den Bildschirm drucken und verketten lassen. Wenn Sie beispielsweise eine Variable mit einem Namen hatten , können Sie drucken. Und dann die Variable, Sie können sehen, wie sie druckt. Was erwarten wir das? Wir könnten den Star-Operator auch verwenden , um dieselbe Zeichenfolge mehrmals zu drucken. Wenn Sie beispielsweise die bestimmte Zeichenfolge mehrmals drucken möchten , können Sie einfach Folgendes tun und Sie würden die Zeichenfolge mehrmals erhalten. Es ist eine Sache, die beim Drucken von Ganzzahlen zu beachten ist, zum Beispiel Variable in, sagen wir, es ist gleich Nummer drei. Wenn wir die Nummer auf den Bildschirm drucken wollten , der mit einer anderen Zeichenfolge verkettet ist. Nehmen wir an, wir haben es versucht, dies zu drucken , zum Beispiel erfüllt es auch das. Nehmen wir an, wir haben versucht, die Variable auf den Bildschirm zu drucken. Wir würden einen Fehler, einen Typfehler, mit der Meldung erhalten , dass wir nur eine Zeichenfolge verketten können, nicht eine ganze Zahl mit einer Zeichenfolge. Es sagt mir also, dass wir einen int nicht mit einer Zeichenfolge verketten können. Das bedeutet, dass wir diese Ganzzahl in eine Zeichenfolge konvertieren müssen, die die String-Funktion verwendet. Jetzt können wir sehen, dass wir es drucken. Wir drucken es so aus. Denn wenn wir zum Beispiel eine Typzeichenfolge, Variable zwei, ausführen , sehen wir, dass es sich um eine Typzeichenfolge handelt, weil wir sie in eine Zeichenfolge konvertieren. Es wäre gleichbedeutend mit der Aussage Typzeichenfolge zu Nummer drei. Es ist eine Zeichenfolge, weil wir die Zeichenfolge in die Zahl drei konvertieren. Wir können die Formatzeichenfolgen-Methode auch verwenden , um Strings zu verketten. Nehmen wir beispielsweise diese Aussagen als Beispiel. Das ist also eine Zeichenfolge. Und wenn wir dann das Punktformat verwenden die Formatmethode aufrufen, dann sagen wir format. Wir geben es weiter. Wir geben Wert an die Formatmethode weiter. Dann wird die Format-Methode auf diese Zeichenfolge angewendet. Und wenn wir das ausführen, sehen wir, okay, das ist eine formatierte Zeichenfolge. Hätte ich zufällig gesagt. Wir sehen, dass wir, wenn auch immer wir die eingegebene Formatmethode in die Klammern eingegeben werden, dasselbe verwenden können. Sie können sagen, dass Sie so einen Wert eingeben. Sagen wir was auch immer Wert, Wert, anderes Wertformat, und dann können wir 12 sagen. Lassen Sie uns dies als Beispiel verwenden. Es würde drucken, so würden Sie einen Wert eins und einen Wert zwei eingeben . Beachten Sie, dass wir die STR, die STR-Funktion, nicht mehr verwenden müssen , um das Innere in eine Zeichenfolge zu transformieren oder zu konvertieren, wenn wir eine Formatierungszeichenfolge verwenden, können wir auch Referenzen verwenden innerhalb dieser Klammern innerhalb der Zeichenfolge. Auf diese Weise. Wenn wir sagen, dass der zweite Positionsparameter lautet, wenn wir einen hier einsetzen. Das erste ist, und wir können hier eine 0 setzen, dann Format bekommen und dann 12. Schon wieder. Wir würden sehen , dass der zweite Positionsparameter zwei ist. Ich hatte hier einen Tippfehler, aber es sollte sagen, ob T2 und der erste eins ist. Nochmal können wir es zuerst sagen. Wir sagten zuerst hier. Zweitens. Wir können sagen, dass der Durchmesser zweiter und der erste der erste ist. Sie können also sehen, dass Sie nach Indizes referenzieren können. Indizes auch wenn Sie innerhalb der eckigen Klammern angeben, können wir auch eine Formatmethode verwenden, um Abstände zu formatieren. Nehmen Sie das zum Beispiel, außer print, und dann übergeben wir diese bestimmte Zeichenfolge. Dann verwenden wir die Format-Methode und übergeben sie in der Zeichenfolge eins, String zwei. Was heißt das? Die erste Zahl ist also der Index, den wir im vorherigen gesehen haben. 0 bedeutet also, dass es auf den einen verweisen wird. Dann bedeutet einer hier, dass jeder Verweis auf hier. Dann benutzen wir Doppelpunkt. Und wir haben unseren Charakter hier. Dieses Zeichen bedeutet, dass Ausrichtung Ausrichtung der übrigen Referenzen ist. Wenn wir einen solchen Opcode haben, bedeutet dies die Ausrichtung der Mitte. Wir haben hier einen Pfeil nach rechts, das bedeutet richtige Ausrichtung. Und wenn wir einen Pfeil nach links hätten, würde das linke Ausrichtungen bedeuten. Aber mal sehen, was das ausgibt. Wie Sie sehen können, würde die erste Spalte oder diese erste Abstandszeile der Abstand 12345 erhalten, oder diese erste Abstandszeile der Abstand 12345 erhalten, da wir hier fünf eingegeben haben. Dann wird auf der anderen Seite 12345678910 bekommen, weil das vermutet dass wir eingegangen sind und wir den Träger bestanden haben. So können Sie vielleicht verwenden, wenn Sie eine Tabelle oder etwas haben, das Sie mit einer Tabelle oder etwas eingeben möchten , das Sie erhalten würden, diese Art der Formatierung verwenden können. Lassen Sie uns jetzt das Beispiel ändern, sagen wir eins statt zwei und dann 0 statt eins. Und sagen wir, hier schreiben wir hier einen Abstand , einen linken Abstand. Aber eigentlich möchten wir nicht angeben, dass der Abstand der Standardwert wäre. Aber mal sehen, was wir hier drin kriegen. Großartig, ja, wir bekommen zwei statt eins und dann bekommen wir einen und wir können den Abstand mit den insgesamt zehn Zeichen schreiben . Schließlich wahrscheinlich die nützlichste Formatierung String and Go Ball, nämlich f Strings. Ich schreibe das Beispiel auf. Zuerst meine Variable und dann hier möchte ich eine speichern. Weil das die Variable ist, die wir meiner Meinung nach zuvor definiert hatten. Genau. So würden wir also var eins drucken. Ronaldo angeführt. Wie Sie sehen können, ist es einfach die Zeichenfolge, aber dann fügen Sie einfach das f vorher hinzu. Das ist so ziemlich genau das. Das ist ziemlich einfach, Strings zu schreiben und zu formatieren, da nur das FBI direkt vor der Zeichenfolge verwendet und dann die Variablen in Klammern innerhalb der tatsächlichen Zeichenfolge verwendet werden. Also lasst uns eine Zusammenfassung machen. Verwandeln Sie einschränkende Gedanken und Überzeugungen in etwas, das befähigt, ich weiß nicht, wie ich jeden Tag zu einem besseren Coder programmieren soll. Sie können Strings und mehrere Möglichkeiten mit dem Pluszeichen verketten , indem Sie die Formatzeichenfolgenmethode oder mit F-Strings verwenden. F-Strings sind so ziemlich diejenige, die wir am meisten verwenden werden, da es so ziemlich die bequemste Art ist, Strings zu formatieren. Und schließlich ist das Radieren eine der neuesten und lesbarsten Möglichkeiten, Strings zu formatieren. Lasst uns endlich reinspringen. Verstehst du den Abschnitt? Ich möchte, dass Sie über einen begrenzten Glauben nachdenken, den Sie haben, und wie Sie dies in eine ermächtigende Überzeugungen verwandeln können. Erstellen Sie als Nächstes eine Funktion namens Begrüßung, die einen Namen als Eingabe verwendet und dann den Eingabenamen mit dem Plus druckt , um Strings zu verketten. Ändern Sie die obige Funktion, um die Formatzeichenfolgenmethode zu verwenden . Ändern Sie die obige Funktion verwendet die S -Dehnung und verwenden Sie dann eine Formatzeichenfolgenmethode zusammen mit dem Unterstrich, der geschweiften Klammerschreibweise, um eine Tabelle mit zwei Spalten in einer Zeile zu erstellen. Spielen Sie mit unterschiedlichen minimalen Breiten- und Textausrichtungen herum und sehen Sie, wie das funktioniert. Ja, viel Glück damit. Stellen Sie alle Fragen, die Sie möglicherweise im Community-Bereich haben. Und wir sehen uns morgen wieder. 11. Tag 8 - Benutzereingabe (Zahlen, Ganzzahl, Schwimmer, Kommentare): Willkommen bei Tag acht. Schauen wir uns also die heutigen Ziele an. Wir werden sehen, was wir sonst noch aus dem Wert der Konsistenz lernen können . Wir werden auch untersuchen, wie Benutzereingaben akzeptiert werden. Wir wollen Zahlen zu Ganzzahlen und Floats untersuchen. Wir werden uns mit den Zahlenoperatoren befassen. Und schließlich werden wir uns Kommentare anschauen und wie man Kommentare in Python verwendet. Okay, also lasst uns unsere Fantasie für eine Sekunde nutzen. Werden Sie in einem Monat sein, wenn Sie jeden Tag mit diesem Tempo lernen? Was ist mit drei Monaten? Was ist mit sechs Monaten? Was ist mit einem Jahr? Was ist mit fünf Jahren? Die Wahrheit ist, dass Sie viel schneller zu einem kompetenten Programmierer werden, als Sie denken. Das Problem ist, dass wir normalerweise nicht jeden Tag eine konsistente Rate neuer Erkenntnisse einhalten . Die gute Nachricht ist, dass das einzige, was zwischen uns im Weg steht und eine Fähigkeit beherrscht, wir selbst sind. Denken Sie daran, dass wir auf der Ebene unserer letzten Erholung arbeiten . Wir sollten uns der Erholung nähern, da wir alles andere mit dem Verstand eines Anfängers machen. So lernen wir, auf den Körper zu hören und uns zwischen Training und Test zu kalibrieren , um ein Ausbrennen zu vermeiden Denken Sie an das Lernen als eine hervorragende Übung für Ihr Gehirn. Dein Gehirn mag Neuheit, und genau das geben wir es, wenn wir etwas Neues lernen. Aber denken Sie immer daran , dass das Gehirn wie ein Muskel ist und der Rest des Körpers, je mehr wir es benutzen, desto stärker wird es. Aber nur solange wir eine gute Balance zwischen Anstrengung und Erholung finden , könnte es zu einem Burnout führen, wenn wir uns zu sehr drängen. Höre auf deinen Körper und bleib kalibriert. Deshalb haben wir alle vier Unterrichtstage Ruhetage. Und wenn du das Gefühl hast, dich zu sehr zu drängen und das ist total okay. Fügen Sie einfach ein bisschen mehr Ruhe hinzu, aber denken Sie daran, neugierig und konsequent zu bleiben. Denken Sie also daran und gehen wir jetzt zu Python, da es so einfach ist, Eingaben vom Benutzer zu erhalten wie die Verwendung der Eingabefunktion. Was auch immer wir danach eingeben, danach wäre die Benutzereingabe. Wir könnten dies einer Variablen zuweisen. Nehmen wir an, eigentlich Benutzereingaben wird Benutzereingaben für die Eingabe verwendet. Und wann immer wir gedruckt haben würde Benutzereingaben alles bekommen, was wir von dieser Variablen haben. Wir können auch sehen, dass mit allem, was wir in die Eingabefunktion übergeben , die Aufforderung für den Benutzer sein wird . Geben Sie die Eingabe ein. Dann wäre dies der Input. Wir können auch sehen, dass wir, wie wir sie etwas früher im Kurs gesehen haben, auch Zahlen in Python verwenden könnten. Wenn du es tust. Wir können, wir können Ganzzahlen speichern, zum Beispiel Zahlen wie diese, wie ganze Zahlen, jede ganze Zahl, 567, Lass uns sieben machen. Oder wir könnten meinen Float machen, was jede Art von Zahl mit Dezimalstellen wäre. Sie können sehen, dass Sie dies auch sehen können , indem Sie sich den Typ ansehen, aber er ändert sich. Wir können eine Art Ganzzahl sehen, aber dann Typ meines Floats, float. Der Unterschied besteht darin , dass der Fluss Dezimalstellen hat und die ganzen Zahlen ganze Zahlen sind. Wir können auch Zahlenoperatoren in Python haben. Versuchen wir es also, indem wir zwei neue Zahlen erstellen. Lasst uns Nummer eins gleich zwei machen. Für Nummer zwei gleich zwei. Dann arbeiten verschiedene Operatoren in Python. Wir können Python so ziemlich als Taschenrechner verwenden. Du könntest Num1 plus Num2 machen. Das wäre gleich sechs normalen Pluspunkten. Wir können auch ein Minus machen , das gleich wäre, wir könnten den Stern als Multiplikator für die Multiplikation verwenden , wäre acht. Wir könnten auch Division gebrauchen. Würde eine Zwei zurückgeben. Bitte beachten Sie, dass diese Division immer einen Float zurückgibt , unabhängig davon, ob diese beiden Ganzzahlen sind, MD-Basalt eine ganze Zahl ist, aber Python gibt immer noch einen Float zurück, da Division immer einen Float zurückgibt . Endlich haben wir was? Wir haben auch den Exponentiat-Doppelstern, das ist viermal vier. Und schließlich haben wir das Modulo , das vier geteilt durch zwei ist. Und was ist dann der Rest oder wie viele Zahlen bleiben übrig? Und das ist eine 0, denn vier geteilt durch zwei haben keinen Rest. Es lohnt sich auch. Betonen Sie, dass Sie bei der Verwendung von Eingaben beispielsweise den Benutzer auffordern, eine Zahl einzugeben , die eine Zeichenfolge zurückgibt. Es wird tatsächlich Drink bekommen. Es ist keine Zahl. Wenn ich sage, dass die Variable eins gleich der Eingabe entspricht, geben Sie eine Eingabe ein. Wenn ich zum Beispiel Five sagen würde und die Variable eins eingeben würde, würde ich eine Zeichenfolge bekommen. Es ist also wichtig zu beachten , dass Sie eine Zeichenfolge erhalten, anstatt das, was Sie erwartet haben, was eine Ganzzahl war. Dafür könnten wir einfach die Variable eins gleich einer variablen Eins machen. Wir könnten Int Variable eins machen. Wir weisen die Variable einer int-Version von sich selbst neu zu. Wenn Sie nun den Typ der Variablen eins ausführen, würden wir sagen, dass es sich um eine Ganzzahl handelt, aber erst nachdem wir sie in eine Ganzzahl konvertiert haben. Und das Gleiche gilt für den Schwimmer. Wenn Sie die Variable eins in einen Float umwandeln möchten, können Sie die Float-Funktion verwenden. Dann siehst du den Typ gleich einem Float. Schauen wir uns schließlich Kommentare in Python an. Um einen einzeiligen Kommentar in Python abzugeben, verwenden Sie einfach das Pfundzeichen um einen mehrzeiligen Kommentar abzugeben. Sie haben normalerweise eine dreifache Zitierversion. Dann können Sie auch tatsächlich dreifache Anführungszeichen und ein einzelnes Signal verwenden , das auch funktionieren würde. Kommentare, Sie können also ein Pfund für einen einzeiligen Kommentar oder dreifache Anführungszeichen verwenden , einfach oder doppelt. Und das würde perfekt für Kommentare in Python funktionieren. Wir verwenden Kommentare in unserem Patellarcode um unseren Code zu dokumentieren und sicherzustellen, dass andere Personen, die ihn nicht geschrieben haben, verstehen, was im gesamten Code vor sich geht , und navigieren können funktionalität des Codes. Süß, also lasst uns eine Zusammenfassung machen. Wir haben gesehen, dass langfristige Konsistenz zu herausragenden Fortschritten führt. Stellen Sie also sicher, dass Sie konsequent bleiben, kommen Sie immer wieder. Als Nächstes haben wir gesehen, dass die Benutzerfunktion, die Eingabefunktion, verwendet wird, um vom Benutzer Eingaben zu erhalten. Und Sie können optional eine Zeichenfolge übergeben , die dem Benutzer angezeigt wird. Python unterstützt auch Zahlen, Ganzzahlen sind ganze Zahlen und Floats haben Dezimalzahlen. den verfügbaren Betreibern gehören der Plus-Minus-Stern-Operator für die Multiplikation, Divisionsbirnen, Doppelstern für Exponentiat und Modulo, was das Prozentzeichen ist. Sie können die Funktion int und float verwenden , um zwei Objekte, zwei Ganzzahlen bzw. Floats, zu vergleichen . Diese sind nützlich, wenn die Eingabefunktion verwendet wird, da sie Daten in eine Zeichenfolge aufnimmt, standardmäßig bringt die Eingabefunktion immer eine Zeichenfolge ein. Wir müssen das transformieren, transformieren. Wir müssen das in einen Float in eine Ganzzahl für eine Zahl umwandeln , die eine Zahl wäre. Schließlich verwenden wir das Pfund für Kommentare und dreifache Kurse für mehrzeilige Kommentare. Und schließlich der Abschnitt „ Verstehen“. Großartig. Für heute lautet die erste Frage, wo wäre sie in einem Jahr, wenn Sie die Gewohnheit entwickeln, konsequent zu lernen? nächste Frage besteht darin, eine Funktion zu definieren, die den Benutzer zur Eingabe einer Zahl auffordert und dann das Quadrat der eingestellten Nummer auf den Bildschirm druckt. Dort hast du einen Hinweis, es könnte hilfreich sein. Die dritte Frage besteht darin, eine Funktion zu definieren , die den Benutzer zur Eingabe einer Zahl auffordert und dann ausgibt , ob die Zahl ungerade oder gerade ist. Sie haben auch einen Hinweis , der hilfreich sein könnte. Verwenden Sie dann schließlich Kommentare in Ihrem Code, um zu dokumentieren, was in Relevanzschritten des Codes vor sich geht. Das war's für heute, Leute. Wenn Sie Fragen zu diesen Fragen haben, stellen Sie sicher, dass Sie sie in der Community stellen und wir sehen uns morgen hier. Viel Glück. 12. Tag 9 - Konditionen (wenn/elif/sonst) und Code-Blöcke: Willkommen Today Nine. Die heutigen Ziele haben wir. Was können wir sonst noch aus der Weltraumwiederholung lernen? Wir werden uns mit Booleans befassen, nach Bedingungen suchen. Und dann werden wir uns mit booleschen Operatoren befassen. Lasst uns also direkt in den Lernbereich springen. Eine hervorragende Möglichkeit, das Beste aus der Wiederholung des Weltraums herauszuholen , ist der aktive Rückruf. Aktiver Rückruf passiert, wenn Sie die Antworten selbst ohne unterstützendes Material erstellen , indem Sie sich eine Frage stellen und sich bemühen, sie selbst zu beantworten , eliminiert Zweideutigkeit zwischen vage vertraut mit etwas darin, es tatsächlich zu wissen. Dies ist eine äußerst effektive Möglichkeit, Informationen vom Kurzzeitgedächtnis auf das Langzeitgedächtnis zu verschieben . Dies ist auch direkt mit der Wiederholung des Weltraums verbunden , da wir jedes Mal, wenn wir ein Thema erneut besuchen , aktiv zurückrufen. Die verständlichen Abschnitte dieses Kurses sind eine großartige Möglichkeit, durch aktiven Rückruf zu lernen, da Sie die Möglichkeit haben, selbst Antworten zu erstellen und die neuronalen Verbindungen zu dem Thema zu stärken , das Sie sind betrachten, solange Sie das Trägermaterial nicht verwenden , es sei denn , es ist völlig notwendig. Aktiver Rückruf ist eine großartige Möglichkeit, um Langzeitgedächtnis einzuschränken oder zu lernen. Denken Sie also daran, wenn Sie versuchen, etwas Neues zu lernen. Lasst uns vorerst nach Python gehen. Jetzt werden wir uns mit bedingten Aussagen befassen. Bedingte Anweisungen sind eine der wichtigsten Säulen der Programmierung da sie es Ihrem Code ermöglichen, einem bestimmten logischen Ablauf zu folgen . Bedingungen sind überall in unserem täglichen Leben. Wenn Sie hungrig sind, holen Sie sich etwas zu essen, wenn Sie müde sind, gehen Sie ins Bett und so weiter. Um bedingte Anweisungen zu verwenden, verwenden wir einen bestimmten bestimmten Datentyp namens Booleans. Boolean kann entweder wahr oder falsch sein, und wir schreiben das Wahr mit einem großgeschriebenen Buchstaben und falsch mit einem Großbuchstaben. Die if-Anweisung wertet einen booleschen Ausdruck aus, und wenn dies der Fall ist, wird er als wahr ausgewertet, dann würde der Codeblock ausgeführt. In diesem Beispiel haben wir den booleschen Wert „true“ zugewiesen, die Variable namens hungrig. Und dann sagten wir, wenn wir hungrig sind, dann führe diesen Codeblock aus. Seit Hunger gleich wahr. Und wenn wir hier Enter drücken, sehen wir den Druck. Drucken Sie ein Sandwich auf einen Bildschirm. Es ist was passiert und was durch den Codeblock läuft. Es stellt sich heraus, dass wir auch zusammen mit der if-Anweisung verwenden können, können wir eine if-Anweisung sonst verwenden, wenn, einen anderen Zustand in 12. Schauen wir uns also das Beispiel an, wir wissen, dass wir die hungrige Variable hatten , die gleich wahr ist. Fügen wir eine faule Variable hinzu und weisen sie false zu. Jetzt verwenden wir eine if-Anweisung und wir werden sagen, wenn faul, faul. Dann sagen wir Print und tun nichts. Aber dann sagen wir L, wenn sonst der Doppelpunkt fehlt, tut mir leid, lass mich Doppelpunkt sagen. Hungrig. Druck, besorge dir Sandwich. Sonst. Sie können drucken. Sagen wir, wenn nichts anderes, nichts Falsch, Falsch durch dieser Bedingungen, dann wird es auf die else-Aussage fallen. Wir können jetzt sehen , dass es in LF geht , weil es heißt, wenn faul, was falsch ist, dann geht es wieder auf die Hungrigen zurück. Und dann heißt es, okay, ich bin nicht faul und ich habe Hunger. Ich hole mir ein Sandwich. Und du kannst sehen, wie du ein Sandwich bekommst. Objekte können auch als „true“ oder „false“ ausgewertet werden. Kurz gesagt, denken Sie an alles, was leer sein kann oder ein Non als falsch bewertet werden würde. Alles andere würde als wahr ausgewertet werden. Wenn ich sagen würde, wenn keine, würde das es prägen, denn wenn keines. Aber wenn Sie zum Beispiel „Wenn leere Zeichenfolge“ gesagt haben, drucken Sie diese auch, da es sich um eine leere Zeichenfolge handelt. 0. Druckt das aus. In diesem Fall wird es auch nicht gedruckt, weil er nicht 0 gemacht hat. Und schließlich wenn, aber wenn wir zum Beispiel diesen Stringdruck haben, diesen Stringdruck können wir sehen, dass er ihn ausdruckt , weil es so ist, ist es etwas und es ist mit etwas gefüllt. So ziemlich alles , was nichts oder leer oder 0 ist, was als falsch ausgewertet wird und alles andere als wahr bewertet wird. Es gibt auch sogenannte boolesche Operatoren , die zu einem booleschen Wert führen. Diese Operatoren sind gleich. Je größer als, größer oder gleich, gleich und so weiter. Also führen wir die Beispiele aus. Fügen wir also einfach eine Variable eine Zahl hinzu, machen wir zwei und dann variabel auf fünf. Wenn ich sage, ob die Variable eins Variablen zum Drucken entspricht, sagen wir das einfach. Wir sehen, dass es nicht gedruckt weil es nicht gleich ist. Was wäre, wenn wir sagen, dass sie größer als Variable eins sind, größer als Variable zwei. Jetzt werden wir sehen, dass es auch nicht gedruckt wird, weil zwei nicht größer als fünf, größer oder gleich sind. Wir wissen, dass es auch nicht drucken wird . Dann werden wir sagen, naja, sagen wir weniger als. Wir sehen, dass es das druckt. Wir können auch weniger als oder gleich machen. Dies wird dies auch drucken. Und schließlich können wir sagen, nicht gleich, was ein Ausrufezeichen und ein Gleichheitszeichen ist. Wir können sehen, dass es dies auch druckt. Andere boolesche Operatoren UND ODER und NICHT. Um zu sehen, ob wir uns diese ansehen und x2, wenn wir wahr und wahr sagen, drucken Sie. Sagen wir, drucken Sie das aus. Natürlich, Sub-Frames weil sowohl wahr als auch wahr sind. Aber was ist, wenn wir sagen, ob wahr und falsch? Es würde nichts drucken weil wir beide Bedingungen erfüllen müssten damit der Umfang der äußeren Bedingung wahr ist. Sagen wir, ob wahr oder falsch. Druckt das aus. Und dann können wir sagen, okay, es druckt auf das, was perfekt ist, was sinnvoll ist, weil wir wollen oder das andere, wir müssen das eine oder andere wahr sein um als wahr zu bewerten. Wir können also sehen, dass dies wahr ist, so dass im Hinblick auf Alternative beurteilen würde, dass alles wahr ist. Endlich der NOT-Operator. Was das tut, ist, wenn Sie den Not-Operator vor einen Wert stellen , wird er überall dort zurückgesetzt, wo er Anzeigen auswertet. Wenn ich zum Beispiel sage, wenn nicht wahr oder falsch, drucken Sie dies aus. Was glaubst du, was das bewerten würde? Genau? Es würde dies nicht drucken, denn wenn Sie sich vorstellen können dies falsch oder falsch sagt, sind beide falsch, sodass nichts gedruckt wird. Die Reihenfolge der Operation ist also , dass der NOT-Betreiber zuerst eingeht, bewerten Sie diese erste Einschätzung nicht wahr. Dann geht der End-Operator und dann geht der ODER-Operator. Es ist auch praktisch zu wissen, dass das Ende und die ODER-Operatoren den Wert zurückgeben, den Wert zurückgeben, der den booleschen Wert repräsentieren soll. Wenn ich das zum Beispiel hätte, sagen wir etwas Leeres. Es würde die leere Zeichenfolge zurückgeben , weil es das ist, was sie darstellt. Es steht für Falsey oder einen falschen Wert. Da dieser Ausdruck als false ausgewertet wird, gibt dieser Ausdruck den Wert , der diese Falschheit darstellt. Wenn ich zum Beispiel dies und das hätte, würde es das zurückgeben, weil es das letzte ist, das bewertet wird, aber es kehrt zurück, aber es stellt am Ende immer noch einen echten Wert dar. Denn zum Beispiel, wenn ich dies oder jenes zum Beispiel hätte , da dies bereits aber schon einen wahren Wert darstellt. Also gibt es diesen Wert zurück. Aber wenn ich es getan hätte, sagen wir das, oder sagen wir mal, lasst uns dafür einen leeren haben. Dann wird es repräsentieren, es wird diesen Wert zurückgeben. Weil dies derjenige ist, der das Wahre repräsentiert. Wenn ich beides leer hätte, würde es nur eine leere, leere Zeichenfolge, die leere zurückgeben . Dies ist in einigen Fällen nützlich. Sie werden später im Projekt sehen, wir dies in einer der Anweisungen verwenden dass wir dies in einer der Anweisungen verwenden, die möglicherweise nützlich sind. Sie können auch eine boolesche Funktion, die bool-Funktion, verwenden, um zu sehen, ob ein Argument übergibt , das die Größe auswertet. Wenn ich das zum Beispiel mache, weißt du, dass es stimmt. Wenn wir auf eines der anderen Beispiele verweisen, dass wir dies getan haben und dass wir sehen können , dass dies als wahr bewertet wird und das würde dies zurückgeben. Das wäre das Gleiche wie Boolean davon zu sagen, was als wahr bewertet wird. Es gibt auch eine Kurzform, eine if-Anweisung zu schreiben. Du schreibst es so. Sagen wir Feuer. Es stimmt. Sonst. Sie können sehen, ob das stimmt. Du bringst Feuerstellen zurück. Dies ist eine Möglichkeit, eine Kurzschrift zu schreiben. Kurzschrift wenn die Aussage könnte nützlich sein, wenn Sie die andere nicht benötigen. Die längere Art, es zu schreiben. Feuer. Wenn falsch, elseif, Feuer falsch, sonst Eis, werden wir woanders Eis bekommen. Großartig. Also lasst uns eine Zusammenfassung machen. Aktiver Rückruf ist die Aktion , die Antwort selbst aktiv ohne unterstützendes Material zu produzieren . Hier ist eine äußerst effektive Möglichkeit Informationen vom Kurzzeitgedächtnis auf das Langzeitgedächtnis zu verschieben. Boolescher Datentyp, der wahr oder falsch sein kann. Und denken Sie daran, dass das k ersetzt wird. Conditionals ermöglichen es Ihnen, Logik-Formular-Logikfluss in Ihrem Programm mit if, elif und else zu erstellen Logik-Formular-Logikfluss in . Boolesche Operatoren geben einen einzelnen booleschen Wert zurück. Das Gleiche, Gleichheitszeichen größer als, größer oder gleich, kleiner als, kleiner oder gleich , nicht gleich. Und dann, UND, ODER und NICHT. Operatoren gaben einen Wert zurück, der als boolescher Wert ausgewertet wird. Wenn Sie dies zum Beispiel sagen und zum Beispiel dachten, wenn Sie dies und eine leere Zeichenfolge sagen, würden Sie die leere Zeichenfolge zurückgeben da die leere Zeichenfolge diesen falschen Wert darstellt. Und dann könnten Sie die boolesche Funktion, die bool-Funktion, verwenden , um das boolesche Äquivalent zu dem zurückzugeben , was Sie in sie übergeben. Schließlich haben wir gesehen, wie wir Kurzform-If-Aussagen schreiben. Und wir können ungefähr so aussehen. Feuer, wenn das stimmt, sonst Eis und das würde Feuer erwecken. Schließlich haben Sie hier den Abschnitt „Verstehen“. Also die Übungen für heute werde ich sie heute nicht durchlesen, werde ich sie heute nicht durchlesen da sie zu lang sind und ich denke, dass dieses Video heute schon ein bisschen zu bieten ist, aber schauen Sie unbedingt in den Fan. Viel Glück dabei. Wenn Sie Fragen haben, hinterlassen diese Fragen gerne im Chat und wir sind in der Community aktiv. Sie haben so viel Glück und wir sehen uns morgen. 13. Kurseinheit 10: Heute haben wir einen weiteren Ruhetag. Wir haben jetzt mehrere Tage hintereinander unsere Grenzen überschritten . Also werden wir heute das Gelernte verinnerlichen und uns ein wenig ausruhen. Für heute bitte ich Sie, zu den Lektionen zurückzukehren , in denen Sie meine Bedürfnisse spüren könnten, einige überdenken und sich alle Fragen ansehen , die Sie möglicherweise haben. Wir lernen am besten durch Handeln. Stellen Sie also sicher, dass Sie alle Übungen machen wir bisher verpasst haben. Noch einmal nehme ich mir eine Sekunde Zeit, um Sie an den Schlüssel zum Lernen zu erinnern , den wir gesehen haben. Bei Fragen oder der Unsere, wenn Sie radikal aufgeschlossen sind, stellen Sie viele Fragen. Fragen sind die Antwort, wenn du dorthin gehst , sie bereichern immer. Wir überwinden einschränkende Überzeugungen, indem ständig Fragen stellen und sie durch Maßnahmen zur Konsistenz in die reale Welt testen . Es ist schwer, Fortschritte sofort täglich zu erkennen. Denken Sie daran, dass es leicht ist, in die Illusion zu geraten, dass Sie sich nicht verbessern, wenn Sie mich in Wirklichkeit extrem schnell verbessern. Wenn du immer wieder zurückkommst, wärst du überrascht, was du erreichst. Und schließlich können wir für die Wiederholung des Weltraums die Vergessskurve zerquetschen, indem wir uns nicht nur mit den Konzepten vertraut machen, sondern auch von dem aktiven Rückruf und Abstand geleitet aktiven Rückruf und Abstand diese im Laufe der Zeit. Das war's für heute. Also erholt euch einen schönen Ruhetag und wir sehen uns morgen wieder hier. 14. Tag 11 - Funktionen (2/2): Willkommen bei Tag 11. Betrachten wir die heutigen Ziele. Zuerst. Was können wir sonst noch lernen wissen, dass Fragen die Antwort sind? Dann schauen wir uns das DRI-Konzept an. Wiederhole dich nicht. Funktionen sind auch Funktionsschlüsselwortargumente und funktionieren dann Standardwerte und geben Objekte aus Funktionen zurück. Und schließlich werden wir Argumente und Keyword-Argumente als Argumente als Funktion betrachten . Lasst uns also direkt in den Lernbereich springen. Für den Lernbereich haben wir, dass Fragen mächtig sind. Denken Sie daran, dass sie am Leben sind, sie bereichern und im gegenwärtigen Moment für immer da sind. Die gleiche Frage, plus Verstand eines Anfängers, ist gleichbedeutend mit neuem Wissen. Denken Sie immer daran, dass Sie sagen, dass das größte Hindernis für Lernen der Glaube ist , dass Sie es bereits wissen. Also lasst uns neugierig bleiben Netze offen. Wie wir zuvor gesehen haben, ermöglichen uns Funktionen, denselben Codeblock mehrmals in unserem Code zu verwenden denselben Codeblock . Dies ist praktisch, wenn wir dieselbe Aktion mehrmals ausführen müssen . Wir wollen nicht, dass es sich wiederholt. Das ist wichtig, wir wollen uns nicht wiederholen. Und beim Programmieren wird die Idee, sich nicht zu wiederholen , was trocken genannt wird, was als Trockencodierung bezeichnet wird. Also wollen wir beim Codieren trocken bleiben. Für diese Lektion verwenden wir VS Code, Visual Studio-Code. Um dies zu öffnen, schauen Sie sich einfach Ihre Anwendungen an und schauen Sie sich Visual Studio-Code an. Ich habe so gegründet und wie wurde das geöffnet? Und ich öffne einfach eine Datei, Dot Py Datei. Wir hatten es schon mal gesehen. Wir können eine Funktion folgendermaßen definieren. Stimmt's? So können wir meine Funktion definieren und als Pass verwenden. Und dann rufen Sie diese Funktion einfach auf, indem Sie meine Funktion sagen und sie mit den runden Klammern aufrufen. Wir haben auch gesehen, wie wir optionale Argumente verwenden können, sind optionale Parameter für die Funktion. Dann benutze diese innerhalb der Funktion. Wir hätten das tun können, anstatt den Pass zu benutzen. Dann führe meine Funktion aus und dann müssten wir hier einige Argumente eingeben , die andere. Dann könnten wir das machen und wir würden dies sehen, das und andere. Aber schau dir an, was passiert, wenn ich sicherlich nicht eines der Argumente eingegeben habe, ich drücke Speichern und führe das dann aus, ich bekomme einen Fehler. Würde einen Typfehler sagen. Meiner Funktion fehlt eines erforderlich, fehlt ein erforderliches Positionsargument, Argument drei. Dies liegt daran, dass wir oben angegeben hatten, dass wir dieses Argument zu 100% benötigen , sobald wir so bleiben werden. Eine andere Möglichkeit, dies zu schreiben, ist zu sagen, dass Argument drei gleich einem falschen Wert entspricht. Dies ist eine Möglichkeit zu sagen, wenn das Argument nicht an die Funktion übergeben wird, diesen Standardwert ihm zuweisen. Wann immer wir das ausführen würden, würde dies und dann den Standardwert sehen. Sie könnten die Funktion auch mit so genannten Schlüsselwortargumenten aufrufen . Du könntest es hier unten angeben. Zum Beispiel könnte man sagen, dass Argh dem entspricht. Dann sind, sagen wir drei gleich anderen. Endlich gewann dies gleich. Dann könntest du das machen. Sie können dies und andere sagen , obwohl Sie es getan haben, aber ansonsten, aber da wir Schlüsselwortargumente verwenden, die die Schlüsselwörter und die Argumente angeben. Wir konnten sehen, dass wir den Befehl bekommen, den wir wollten. Eine weitere nützliche Sache bei Funktionen ist, dass Sie Werte mit einer Funktion zurückgeben können . Sagen wir zum Beispiel Nums, und dann sagst du Num Eins . Num zwei. Wir könnten einen Wert aus dieser Funktion zurückgeben. Und wir könnten sagen, sagen wir num eins. Lassen Sie uns tatsächlich Ergebnisse sagen , die Num1 plus num2 entsprechen. Und dann können wir das Ergebnis einfach zurückgeben. Dies ist eine Möglichkeit, eine Funktion zu verwenden , um einen Wert für uns zurückzugeben. Wenn wir also sagen, Adnan, sagte 510, dann werden wir sehen, dass wir nichts auf den Bildschirm drucken lassen , weil die Wenn wir die Funktion ausführen, nichts enthält. Es druckt nichts auf den Bildschirm. Es führt dies nur aus und gibt diesen Wert dann auf den Bildschirm zurück. Aber wenn wir sagen, wenn wir print sagen, was von dieser Funktion zurückgegeben wird, dann sollten wir, wann immer wir dies ausführen , die Nummer 15 erhalten, was wir erwartet haben. Return-Anweisung gibt ein Objekt oder eine Reihe von Objekten aus einer Funktion zurück. Sie können auch Funktionen erstellen, die willkürliche Argumente oder beliebige Schlüsselwortargumente aufnehmen oder beliebige Schlüsselwortargumente indem Sie die folgende Notation verwenden. Also benutze einen Stern und dann Argumente, Doppelstern und ein Keyword argumentiert auf diese Weise. Und was das tun würde, ist, dass wann immer Sie, wann immer Sie diese Funktion aufrufen, sagen wir meine Funktion. Man könnte sagen, was auch immer, egal welche Anzahl von Argumenten wir weitergeben möchten, es wird als Argumente aufnehmen, wie Sie hier sehen können. Wenn wir dann Keyword our oder was auch immer sagen, sagen wir var 11, wäre dies ein Keyword-Argument. Und dann Val zwei, dies wäre ein weiteres Keyword-Argument. Wenn wir diese willkürlichen Beträge übergeben , dies kann eine beliebige Anzahl von Argumenten in dieser beliebigen Anzahl von Schlüsselwortargumenten sein, haben wir diese Funktion ausgeführt. Die Funktion, die wir für die Argumente und das Wörterbuch für die Keyword-Argumente zu Tuple bringen würde Argumente und das Wörterbuch für die Keyword-Argumente . Und ich möchte, dass Sie diese Frage im Hinterkopf behalten, okay, was ist ein Tupel und einmal ein Wörterbuch, denn wir werden uns diese bald ansehen . Aber im Moment ist es das einzige, was Sie wissen müssen, ist, dass Sie eine beliebige Anzahl von Argumenten angeben können. Nun versuchen wir die Anzahl der Keyword-Argumente mit den folgenden. Eine Sternnotation und eine Zwei-Sterne-Notation. Denken Sie auch daran, dass Sie diese zufällige Paarung sagen können, Sie können dies zufällig nennen. Es wird immer noch funktionieren. Aber es wird immer noch funktionieren. Aber es ist Konvention, sagen Argumente und Keyword-Hashtags wie diese. Großartig. Also lasst uns eine Zusammenfassung machen. Fragen sind lebendig und bereichern im gegenwärtigen Moment immer für immer. Wir müssen neugierig mit einem offenen Geist sagen, mit dem Verstand des Anfängers. Und auf diese Weise lernen wir weiter. Funktionen ermöglichen es uns, trocken zu bleiben. Welche Programmierung? Wiederhole dich nicht. Funktionen können keine Argumente benötigen. Positionsargumente sind optionale Argumente. Indem Sie ein Schlüsselwort mit einem Standardwert hinzufügen. Funktionen können jede Art von Objekt zurückgeben. Obwohl ihre Funktionen. Wir können die Sternenargs und dieses Double Star Keyword Args verwenden. Notation 12 Funktionen mit Ausnahme einer beliebigen Anzahl von Argumenten bzw. Schlüsselwortargumenten. Werfen wir einen Blick auf den Abschnitt „Verstehen“ für heute. Was ist das größte Lernhindernis? Wire fragt die Beantwortung? Definieren Sie dann eine Funktion, die ein Standardargument akzeptiert und es auf den Bildschirm ausgibt, der als Funktion bezeichnet wird, wobei das Argument angegeben wird und es nicht ebenfalls bereitgestellt wird. Definieren Sie eine Funktion, die eine beliebige Anzahl von Argumenten, Argumenten und eine beliebige Anzahl von Schlüsselwortargumenten, Schlüsselwortargumenten und gibt die Nummer aus. Druckt die beiden resultierenden Objekte auf den Bildschirm. Und dann mach dir keine Sorgen, wenn du nicht weißt, was der Optikstern ist, wir werden bald davon erfahren. Erstellen Sie schließlich eine Funktion, die ein Objekt zurückgibt, weisen Sie das zurückgegebene Objekt einer Variablen zu und drucken Sie das Objekt auf dem Bildschirm aus. Aber großartig, das war's für heute, Leute. Dies sind die Fragen und wenn Sie Fragen dazu haben, zögern Sie nicht, im Chat zu fragen und die Community wird aktiv sein. Sie haben so viel Glück und wir sehen uns morgen wieder. 15. Tag 12 - Listen, Reiten, Sortieren: Willkommen bei Tag 12. Die heutigen Ziele haben wir also das, was können wir sonst noch aus Konsistenz lernen und jeden Tag unsere Grenzen überschreiten? Dann schauen wir uns die Liste an, zwei Listenmethoden in diese Slices und schließlich in Bereiche. Heute werden das Hauptthema Listen sein. Lasst uns also direkt in den Lernbereich springen. Zuerst wollte ich mir eine Sekunde Zeit nehmen, um mir vorzustellen, wo Sie in einem Jahr nicht sein würden wenn Sie jeden Tag bissgroß leiden lassen, die Medienflüssigkeit 1% besser in Python, es stellt sich heraus, dass Sie machen können diese mundgerechten Anstrengungen der Gewohnheit und dann haben sie tatsächlich genossen. Genau das wollen wir Amy mit diesem Kurs machen, um Ihnen hoffentlich zu zeigen, dass Lernen Spaß machen kann und dass wir jeden Tag wachsen können , wo wir den täglichen Prozess wirklich genießen. Als Nächstes haben wir diese Liste an einem Datentyp, der verwendet wird, um bestellte Artikel in einer Variablen zu speichern. Listen sind veränderbar, was bedeutet, dass Sie sie aktualisieren können indem Sie einzelne Elemente zur Liste hinzufügen oder entfernen. Die Elemente der Liste können ein gemischtes Ende eines beliebigen Datentyps sein, einschließlich anderer Listen. Schauen wir uns an, wovon wir hier sprechen. Um eine Liste zu erstellen, verwenden wir einfach die folgende Notation. Wir benutzen eckige Klammern. Meine Liste wäre das. Und um diesem Artikel hinzuzufügen, fügen wir einfach Elemente hinzu und trennen sie, äh , mit Kommas, Punkt zwei usw. wäre eine Listendefinition. Wenn ich sagte, drucke meine Liste den Bildschirm aus und klicke dann auf Ausführen, sehen wir, dass die Liste auf einen Bildschirm gedruckt wird. Wir können das an den eckigen Klammern sehen und dass dies tatsächlich eine Liste wäre. Wenn wir eine leere Liste definieren wollten, erstellen wir einfach eine Liste und weisen sie eckigen Klammern zu, in denen nichts darin enthalten ist. Wenn wir dies ausführen, würden wir dies ausführen und wir würden sehen, dass es eine leere Liste zurückgibt. Listen haben Indizes. Und genauso wie wenn wir über Indizes mit Strings gesprochen haben , die wir mit eckigen Klammern und der Indexnummer auf sie verwiesen haben . Wir machen das Gleiche mit Listen. Und genauso wie eine Liste, das erste Element wäre der Nullen-Index. Sie sind nullbasiert. Was ist, wenn wir diese Aussage sagen? Was glauben Sie, dass es auf den Bildschirm gedruckt wird ? Lass uns das laufen lassen. Und wir erhalten Punkt eins genau weil wir Index 0 referenzieren oder auf die gleiche Weise auflisten, wie wir mit Strings negative Indizes sagen könnten. Und wir werden das Gleiche bekommen, wie wir von den Strings erwartet hatten, dass wir die letzte Zahl bekommen würden. Als Nächstes werden wir uns ein paar Listenmethoden ansehen. Schauen wir uns zuerst die append-Methode an. Wenn wir meine Liste ausgeführt haben, fügen Sie ein neues Element und das Element drucken Sie dann meine Liste aus. Mal sehen, was passiert , wenn wir das ausführen. Wir erhalten dieselbe Liste mit dem angehängten Artikel. Was die append-Methode tut, ist, dass sie das Element, das Sie in die append-Methode eingeben, am Ende der Liste hinzufügt . Wir können auch eine, wir haben auch eine Insert-Insert-Methode. Wir teilen zuerst den Index mit, fügen dann ein, eingefügtes Element dann das Element ein, und dann drucken wir die Liste erneut. Mal sehen, was passiert. Wir sehen , dass es als erstes als Element Nummer Eins der Liste eingefügt wird . Das Element mit der Indexnummer Eins der Liste. Also bekommen wir den Artikel dann den unsicheren Gegenstand, den Punkt zwei usw. und dann den neuen Gegenstand. Als Nächstes können wir auch sehen, dass wir Elemente aus einer Liste löschen können, indem wir die DDL-Anweisung verwenden, diese delete -Anweisung. Wir können sagen, lösche meine Liste. Auch hier müssten wir ein Element mit einem Index referenzieren . Wenn wir es dann drucken, meine Liste, würden wir Punkt eins sehen und dann usw. Ohne Punkt zwei gibt es auch das Entfernen, die Entfernungsmethode, meine Liste, entfernen. Dann könntest du einen Artikel nach dem suchen, was es ist. Sie können sehen entfernen, meine Liste drucken. Dann führe das aus. Dann konnten Sie sehen, dass es die Elemente aus dieser Liste entfernt hat. Wir haben auch die prob-Methode. Und was dieser tut, ist, dass es das letzte Element der Liste löscht oder entfernt . Es gibt es zurück. Immer wenn ich meine Liste mache, drucke ich meine Liste aus. Was es tun würde, ist, dass Sie sehen würden, dass es das letzte Mal nicht den usw. Dod haben würde, es hat Punkt eins und Punkt zwei, aber nicht den letzten Gegenstand. Wenn ich print sagen würde, meine Liste Pop, würde ich das usw. gedruckt und dann die Liste sehen , denn das erste, was ich hier male , ist ein Befehl über meinen Listen-Pop. Und wir wissen, dass diese Methode sie entfernt und zurückgibt. Und seit, da es das letzte Element der Liste zurückgibt, wird das auch zurückgegeben. Wenn wir versuchen, es zu drucken, sehen wir, dass der Artikel auf den Bildschirm gedruckt wird. Und wenn wir dann die Liste drucken, sehen wir, dass die Liste geändert wurde und die usw. nicht enthalten ist. Wir haben auch sogenannte Listen-Slices. Führen wir also den folgenden Befehl aus. Meine Liste, und wir haben es von 0 bis 22 fällig. Was das bedeutet , ist, dass es bei 0 beginnt, beim Index 0 und endet den Index zwei. Und das ist davon. Wir können sehen, dass es startet und eine 0 enthält. Aber dann fügt es auch den Index von einem hinzu. Und wenn er dann zu dem Element mit dem Index von zwei kommt , wird es nicht eingeschlossen. Es enthält also die erste, aber es enthält nicht die, die höhere Zahl, die obere Zahl. Lassen Sie uns ein anderes Beispiel machen. Mal sehen, was ist, wenn wir es ausdrucken, setzen Sie dann zum Beispiel drei und dann eins. Als wir das durchführten, wurden wir okay, wir fingen mit einem an und endeten dann um drei, ohne die drei einzubeziehen. Die drei wären die usw. so ist es Lexus Arbeit. Dann könnten wir auch sagen, wenn wir keine Zahl angeben, heißt es nur, dass sie bis zum Ende gehen . Wenn wir das ausführen, sehen wir, dass es bei 0 angefangen hat und es einfach bis zum Ende geht. Wir könnten das andersherum machen. Wir könnten also sagen, beginnen Sie den ganzen Weg von Anfang an und gehen Sie bis zur Nummer drei, sagen wir mal. Dann würde das bedeuten , dass es bei 0 beginnt und von Anfang an beginnt. Und dann geht es bis drei bis drei mit Daumen einschließlich drei , denn denken Sie daran, dass drei das usw. sein würden denn 012 und dann drei und es würde das etc nicht einschließen . Das sind String-Slices. Sie können diese auch verwenden. Nehmen wir zum Beispiel an, wenn Sie die letzten beiden Zahlen, also von unserer Liste, erhalten möchten, könnten Sie Folgendes ausführen. Sie können sich clevere Möglichkeiten vorstellen dies auf verschiedene Arten zu nutzen. Und selbst wenn Sie keine einzelne Nummer vergeben hätten, würden wir die gesamte Liste erhalten. Weil es von Anfang an bis zum Ende geht. Wir sehen, wie Listen veränderbare Objekte sind , damit wir unser Objekt ändern können. Werfen wir einen Blick auf die Idee meiner Liste für eine Sekunde. Wir würden die ID meiner Liste verwenden. Dann führen wir das aus und wir würden bekommen, was wir brauchen, um es zu drucken. Drucken Sie natürlich die Idee meiner Liste aus. Wir würden eine Nummer für die Idee davon bekommen, meine Liste. Was wäre , wenn wir eine Kopie meiner Liste erstellen und eine Änderung an der Kopie meiner Liste vornehmen wollten . Lasst uns das tun. Wir können intuitiv denken als ob wir eine meine Liste erstellen, kopieren wollten , könnten wir intuitiv sagen, okay, kopieren Sie einfach meine Liste und machen Sie sie gleich meiner Liste. Was ist dann, wenn du es ausdruckst? Meine Liste, kopiere meine Liste. Kopieren. Perfekt. Okay. Ich bekomme Punkt 1203, Punkt drei usw. Also bekommen wir die Liste, die Kopie meiner Liste, es funktioniert wie erwartet. Aber jetzt lassen Sie uns sagen, dass wir eine Änderung vornehmen wollen. Anstatt meine Kopie auszudrucken, sagen wir, dass es meine Listenkopie drucken würde und dann werden wir aus meiner Kopierliste pumpen. Wir nehmen eine Änderung an meiner Listenkopie vor. Dann sagen wir, wann wir, wenn wir das machen, kommen wir so weiter, was wie erwartet ist. Aber dann drucken wir meine Liste aus. Das Original meine Liste. Abschließend drucken wir das Original meine Liste aus. Wir sehen, dass meine Liste ebenfalls geändert wurde. Abzüglich der ursprünglichen Mylist auch in der usw. geändert wurde wurde auch von dieser Liste geblendet. Wie erstellen wir also eine Kopie ohne, ohne beide Listen zu ändern? Denn was hier passiert , ist, dass die Imagine, die wir in meiner Liste haben, diese Variable zuweist, sie weist nur eine Beschriftung demselben Objekt zu. Wir haben also nur ein Objekt, das ist diese Liste. Und als wir versuchten, eine Kopie zu erstellen, haben wir einfach ein Label zum selben Objekt hinzugefügt. Als wir hier die Pop-Action erstellten, kamen wir auf alles, auf das diese Ebene hinwies. Es wies auf das ursprüngliche Objekt hin, das dieses war. Der richtige Weg, dies zu tun, wäre, es gibt ein paar Wünsche, zwei Möglichkeiten, wie wir hier ein Listen-Slice verwenden können. Wir schneiden es so. Auf diese Weise erhalten wir, wann immer wir laufen, die gesamte Liste wie erwartet. Wir würden von der Kopie puppen, aber im Original behalten. Oder wir könnten die Kopie gebrauchen. Kopieren Sie diese Methode. Die Kopie, diese Methode. Da gehst du. So kopieren Sie eine Liste in eine andere Liste. Und dann nehmen Sie dort Änderungen an einer Kopie ohne Änderungen an Ihrem ursprünglichen Objekt vorzunehmen. Denken Sie daran, dass wir die Methode dir verwenden könnten, um alle Methoden eines Objekts oder eines optischen Typs zu erhalten alle Methoden . In diesem Fall können wir, wenn wir es ausführen, zumindest alle Methoden des Listendatentyps sehen. Hier haben wir, als hätten wir schon ein paar davon gesehen. Wir haben die Pumpe gesehen, wir haben append gesehen, wir haben den Einsatz gesehen. Jetzt schauen wir uns noch einen an. Schauen wir uns das an, mal sehen. Schauen wir uns die Indexmethode Index an. Wenn wir meine Liste ausführen, sagen wir, drucken Sie meinen Listenindex, was geben wir hier ein Wert aus. Sagen wir, ich, das Element, was es zurückgibt, ist der Index, in dem dieser Wert lebt. Wenn wir Apple, Apple, Auto, Elefant usw. hinzufügen Apple, Auto, Elefant usw. Wenn wir uns ansehen wollten, wo der Elefant ist, würden wir das einfach ausführen und es wird Ihnen sagen , wo der Elefant Wert haben wird. Und wenn es nichts gibt, haben Sie einen Eingabewert , der nicht da ist, Sie erhalten einen Wertefehler. Nichts ist nicht in der Liste enthalten. Dafür würden wir einen Wertefehler bekommen. Was ist dann, wenn wir uns anschauen, sagen wir zum Beispiel die Sortiermethode. Was ist, wenn wir uns sortieren würden? Wir würden nichts sagen. Dann gibt es keine aus, da diese Sortiermethode nichts zurückgibt, daher benötigen wir die Druckfunktion nicht für sie. Lassen Sie uns eine printf-Funktion machen, wie die Mylist ist, wie sieht meine Liste aus? Es bevor ich eine Aktion auf meiner Liste mache? Also lasst uns das finanzieren. Und wenn wir Okay sagen, kriegen wir Apple Auto, Elefanten usw. Weil dieser eigentlich schon sortiert war, a, B, C, D, E, F, G. Ja, es ist schon sortiert. Sagen wir also, lassen Sie uns diese beiden wechseln. Wir fügen dieses Beispiel hinzu, dann bekommen wir die gleichen Top-Prokaryoten usw. , weil diese Sortiermethode es tatsächlich sortiert. Dieser ist erwähnenswert , dass er sich von der sortierten Funktion unterscheidet , da Sie meine Liste sortiert drucken können. Sie könnten die sortierte meine Liste ohne Sortieren und mit der Methode ausdrucken . Und dieser würde die sortierte Liste drucken. Und wenn Sie das dann selbst ausdrucken, können Sie sehen, dass es nicht sortiert ist. Die sortierte Methode ist anders. Die Sortiermethode unterscheidet sich von der sortierten Funktion. Wir können auch sehen, dass wir die Len-Funktion verwenden können , um zu sehen, wie lang die Liste ist. Wir können sehen, dass die Länge vier beträgt. Und schließlich schauen wir uns die Bereiche an. Reichweite. Sie verwenden einfach die Bereichsfunktion, um einen Bereich zu erstellen und dann einfach anzuordnen, sagen wir, wir machen Bereich fünf. Es ist vereinbart, dass ich von der Zahl 0 zur Nummer fünf wechseln würde , ohne die Nummer fünf einzubeziehen. Unser Sortiment ist also ein Typ für sich. Nun, wir könnten die Listenfunktion verwenden , um die Anordnung in eine Liste zu verwandeln. Dies würde uns eine Liste des Bereichs 01234 geben, ohne die fünf. Orange Wenn wir einen, nur einen Wert eingeben, wäre dies die Obergrenze. Wenn wir zwei Werte setzen, sagen wir 15, wäre es die Untergrenze und die Obergrenze. Lass uns eine Liste machen. Dieser Bereich reicht von eins bis zwei bis fünf. Was denkst du, was sich herausstellen würde? Wenn wir einen machen, wird es anders sein als dieser, oder? Ja. Wo würden wir 234 ohne die Fünf wollen. Und wir haben auch eine letzte Möglichkeit, einen Bereich zu verwenden , der drei Werte eingibt. Eins, lass uns fünf nehmen. Und dann sagen wir einen dritten Wert, der das ist , wie viele Inkremente der Wert vergeht. Es würde also von eins bis fünf um zwei erhöht werden. Also geht es von eins zu Zahlen später drei und dann auf fünf mit fünf. Was ist, wenn wir den ganzen Weg zu 20 sagen? Wir würden 135 bekommen, alle Zahlen wie um zwei bis 20 erhöhen , ohne auszuschließen, ohne die Zahl 20 einzubeziehen. Es gibt auch drei weitere nützliche Funktionen, die wir uns ansehen können , die auch nicht mit Listen zu tun haben. Wir haben die Min-Funktion, die Max-Funktion, die Sum-Funktion. sind also ziemlich intuitiv. Was wäre, wenn wir sagen würden, meine Liste entspricht der Liste des Bereichs 120, die um zwei erhöht wird. Dann wäre meine Liste ähnlich, wie wir es oben gemacht haben. Aber was wäre dann, wenn wir sagen würden, dass ein Minimum meiner Liste wie erwartet eine bekommen würde? Wenn wir nicht von meiner Liste maximal wären, würden wir 19 bekommen. Und wenn wir dann etwas meiner Liste machen würden , würden wir eine 100 bekommen weil ich die Summe aller Zahlen in dieser Liste wäre . Genial, also lasst uns eine Zusammenfassung machen. Bemühungen in der mundgerechten Größe führen täglich zu 2% Verbesserungen, die sich im Laufe der Zeit verstärken. Genau die prozentualen Verbesserungen führen zu einem langfristigen exponentiellen Wachstum. Als Nächstes haben wir gesehen, dass eine Liste ein Datentyp ist. Verwenden Sie die gespeicherten bestellten Artikel in einer Variablen. Listen sind veränderbar, was bedeutet, dass sich ihr Inhalt ändern kann, da ihre ID gleich bleibt. Wir definieren eine Liste mit der folgenden Syntax. Und sie können eine Kombination aus einem beliebigen Datentyp, Referenzlistenindex unter Verwendung der Notation für eckige Klammern enthalten . Und dann verweisen negative Indizes auf Elemente, die vom letzten Artikel rückwärts gehen. Wir haben diese Scheiben auch gesehen. Die folgende Syntax wird überall dort verwendet, wo Sie ein neues Objekt mit einer Kopie meiner Liste erstellen möchten überall dort verwendet, wo Sie ein neues Objekt mit einer Kopie meiner Liste erstellen . Dann sahen wir auch eine Reihe neuer Listenmethoden, darunter die folgenden. Denken Sie daran, dass wir die integrierte Funktion verwenden könnten , um eine vollständige Liste aller Methoden im Datentyp anzuzeigen. Wir haben auch die dafür verwendeten integrierten Funktionen gesehen, wie zum Beispiel Land sortiert, Min-Max und einige. Wir haben auch Bereiche mit der integrierten Funktion Range erstellt. Und wir haben gesehen, wie wir können, Bereiche auch mit der in der Liste integrierten Funktion umwandeln können. Schweden endlich haben wir hier den Abschnitt „Verstehen“. Denken Sie an die Bedeutung des Abschnitts Verstehen. Ich denke, der kritischste Teil der Kurse. Wenn Sie jeden einzelnen Tag des Verstehen-Abschnitts tun können, verstehen Sie ziemlich genau, was wir jeden Tag durchführen. Also hier hast du die heutige Sektion. Sie haben Fragen dazu. Lassen Sie sie gerne im Community-Bereich oder im Chat und wir sind dort aktiv. Ansonsten viel Glück damit und hoffe, Sie morgen wiederzusehen. 16. Tag 13 - Schlaufen: Willkommen zum 13. Tag. Für die heutigen Ziele haben wir welche Vorteile hat das Lernen und das Überschreiten unserer Grenzen, und wie vermeiden wir ein Ausbrennen? Dann schauen wir uns sowohl For-Loops als auch While-Loops an. Und dann das Kontinuum, die Break-Aussage und schließlich die Aussage. Springen wir direkt in den Lernbereich. Wir wissen, dass Lernen Neuheit beinhaltet. Neuheit ist ziemlich ähnlich wie Bewegung für unser Gehirn. Denn je mehr wir unser Gehirn benutzen, desto stärker wird es solange wir kalibriert sind. Und mit Kalibrieren meine ich das, denn wenn wir unsere Grenzen überschreiten und uns zu sehr drängen, könnten wir möglicherweise ausbrennen. Deshalb haben wir alle fünf Tage auf Staaten gedrängt , damit wir uns erholen und überprüfen können , was wir lernen. Und wir vermeiden es auszubrennen. Um for-loops zu untersuchen, wissen wir, dass die Syntax zum Erstellen einer for-Schleife die folgende ist. Vier Elemente in schrecklich führen dann den Codeblock aus. Darin. In diesem Fall kann das Auge schrecklich jede Art von Objekt sein , das durchlaufen werden kann. In diesem Beispiel. Wenn wir zum Beispiel eine Variable mit einer Zeichenfolge hätten und wir für Item in der Spielervariablen sagen können, drucken Sie, sagen wir, drucken Sie das Element nur um zu sehen, was das tun würde. Was wäre, wenn wir es getan hätten, ich habe jedes einzelne Element in einer Stringvariablen durchlaufen . Mal sehen, was passiert. Wir sehen, dass es jeden einzelnen Buchstaben durchläuft , der so ziemlich genau dort ist, wo wir es hätten, ich hätte für jeden einzelnen Buchstaben am meisten erwartet und er druckt ihn auf den Bildschirm. Wir haben auch eine andere Art von Schleife, die als While-Schleife bezeichnet wird. Und die Syntax lautet wie folgt. Während der Zustand vergeht. Dies ist die einfachste Art zu sagen, während Bedingung, die zu einem booleschen Wert ausgewertet wird, entweder wahr oder falsch. Zwar stimmt. Dies wird ausgeführt, solange wahr ist, und dann wird der Codeblock ausgeführt. Lassen Sie uns also ein Beispiel machen und sagen, lassen Sie uns eine Zählvariable erstellen. Sagen wir, Zähler gleich 0. Und sagen wir, während Sie weniger als oder gleich fünf zählen , drucken Sie. Wenn wir dies jetzt ausführen, müssten wir auch Zählgleichwerte hinzufügen, um plus eins zu zählen. In Python gibt es eine einfachere Möglichkeit, dies zu schreiben. Eine einfachere Syntax wie diese, die Anzahl plus gleich eins ist. Es fügt einfach eins hinzu, um zu zählen. Und es stellt dasselbe dar, das gleiche, was ich ein Psychedelikum tippe, dasselbe , was sie vor einer Sekunde getippt haben. Lass uns das laufen und sehen, was passiert. Genial, das ergibt Sinn. Also zählst du 0 und zählst dann eins. Während diese Bedingung wieder zutrifft, ist eine Zählung gleich eins. Dann läuft es wieder, es läuft es erneut und es läuft insgesamt sechs Mal, und es läuft insgesamt bis die Zählung gleich sechs ist. Und dann hört es auf zu laufen. So werden wir eine Wild-Loop ausführen. Aber jetzt sehen wir uns ein Beispiel an, ob wir vergessen haben, die Änderung der Zählvariablen hinzuzufügen. Wenn wir das gemacht haben und es ausführen, sehen wir, dass der Code unendlich läuft. Bleib niemals fest. Es wird jetzt aufhören zu laufen, da Ihre Bedingung immer als wahr ausgewertet wird. Wenn Ihnen dies der Fall ist, führen Sie einfach Control C aus. Es wird eine Tastaturunterbrechung durchführen und die Ausführung Ihres Codes unterbrechen. Wenn Sie jemals eine Endlosschleife erstellen oder die Ausführung Ihres Codes unterbrechen möchten , können Sie einfach den Tastaturunterbrechung ausführen und der Code wird von der Ausführung beginnen. Es gibt auch zwei Befehle, die wir innerhalb der while - und for-Schleifen verwenden können . Diese Befehle werden sie hier oben in einen Kommentar schreiben. Weiter und mach weiter und breche. Was diese tun, ist, dass zum Beispiel, wenn die Zählung plus eins entspricht, fügen wir zum Beispiel hier hinzu, das ist traurig, eine fortgesetzte Aussage. Und dann lasst uns drucken, drucken, zählen. Du kannst schon sehen, wie das ausgegraut ist. Es hat keine Farben mehr weil die fortlaufende Aussage, was es tut, ist, dass es alles überspringt. Das ist weicher es, und es läuft einfach wieder zur, der, der Whre, der Where oder der for-Schleife ab der nächsten Iteration. Einfach diese nächste Iteration macht es sofort. Wenn ich das aufschreiben und dann ausführen würde, führe eine Endlosschleife mit nur Hayes eine Endlosschleife mit aus, weil es nie zur Druckanzahl kommt und er nie zur Zählung plus einer Anweisung kommt. Also unterbreche ich das mit der Tastatur. Ja, das ist es, was die fortgesetzte kontinuierliche Aussage bewirkt. Es geht zur nächsten Iteration. Wenn ich das andererseits getan habe, werden das Kontinuum von dort entfernt. Es läuft 0, hey eins oder andersherum. He 0, A1, A2, A3, A4, A5. Und wenn es dann Hass sechs ist, nicht, wird dies nicht mehr als wahr bewertet und es hört einfach auf zu laufen und den Rest von ihnen fortlaufend zu laufen. Der Kodex. Dann schauen wir uns die Break-Anweisung an. Das ist einfach eine Add-Anweisung hier unten, die besagt, ob die Zählung gleich drei ist, dann break. Was war das zu tun? Was die Break-Anweisung, was es tun wird, ist, dass es einfach aufhören wird, den Wild-Code oder die Wild Loop oder die for-Schleife insgesamt auszuführen den Wild-Code oder . Wenn ich das ausführen würde, würden wir erwarten, dass es läuft, wenn es zu drei kommt, wo immer es zählt und inkonsistent auf drei kommt, der Code läuft, der Codeblock-Bootstrap läuft und es wird break und die While-Schleife hört ganz auf zu laufen. Das ist es, was die Fortsetzung und Break-Aussagen tun. Nehmen wir an, wir hatten eine Liste mit drei Werten oder drei Elementen in der Liste definiert . Da dies auch iterierbar ist, können wir eine for-Schleife zweimal durch jedes einzelne Element in dieser Liste iterieren. Was wir für Artikel in meiner Liste getan haben , Artikel drucken, das würden wir erwarten. Jedes einzelne Element oder kein Licht und Name werden auf den Bildschirm gedruckt. Das ist großartig. Es gibt auch eine andere Möglichkeit, mit einer for-Schleife Artikel zu drucken, oder? Ein schrecklicher Gegenstand wird analysiert, was für Artikel in Reichweite sein würde. Wenn wir also eine Liste von Zahlen erstellen wollten, z. B. im Bereich von 0, oder wir können die Nullen weglassen, neigen Sie dazu bei zehn. Dann sag Artikel in Reichweite. Wir können das sagen und dann würde dies bis 0 bis neun drucken , wie Sie hier unten sehen können, 0123456789029. Was wäre, wenn wir drucken wollten? Lassen Sie mich zurück zu dem Zeitpunkt, an dem wir das hatten. Was wäre, wenn wir alle ungeraden Quotenelemente in dieser Liste drucken wollten ? Lass mich noch andere hinzufügen. Während wir jeden anderen Artikel in dieser Liste drucken wollten , konnten wir das tun. Wir könnten die folgende Syntax für Element im Bereich 0 verwenden. Dann auch meine Liste. Artikel drucken, mein Listenelement ausdrucken. Auf diese Weise könnten wir jedes andere Element drucken wir jetzt auswählen könnten, niedrig und dieses jedes andere Element in der Liste mit einer Bereichsfunktion benennen . Wir können die insert-Anweisung auch für andere boolesche Ausdrücke verwenden. Zum Beispiel, wenn wir das, sagen wir jetzt , in meiner Liste ausgeführt haben. Ja. Was erwarten Sie, dass das läuft? Genau, ja, denn wenn der Artikel in der Liste enthalten ist, können wir ja drucken. So kann die n-Anweisung auch auf diese Weise verwendet werden. Und auch wenn wir das Gegenteil sagen können, wenn Sie so wollen. Jetzt aber nicht in meiner Liste. Es wird gedruckt. Ja. Sonst drucken. Sagen wir nicht in meiner Liste. Nein, nicht in der Liste. Wenn nicht, können wir dann ja sagen. Was erwarten Sie hier für eine Aldose und Liste oder wenn nicht, können wir sehen, dass es darin liegt, weil ein anderer Spieler gesagt wird. Wenn wir etwas anderes sagen, ein anderer Spieler, wird es nicht in der Liste sagen , weil L nicht in der Liste steht. Was wäre, wenn wir eine weitere erstellen wollten können wir eine leere Liste erstellen. Kann eine leere Liste erstellen. Und wir möchten dieser Liste hinzufügen, dass jedes einzelne Element der ersten Liste eine bestimmte Bedingung erfüllt, oder? Wir können also für Artikel in meiner Liste sagen, dass wir eine bestimmte Aktion ausführen werden. Dann werden wir zuerst sagen, wenn die Bedingung wir versuchen, zu Fleisch zu essen. Fleisch ist, wenn der Artikel den Buchstaben e enthält. Wenn Item, sagen wir, wenn in item, dann werden wir es tun, möchten wir es zu dieser Liste hinzufügen? Dann hängt meine andere Liste Element an, weil der Artikel derjenige ist, den wir von dieser Liste erhalten. Schließlich möchten wir das Ergebnis meiner anderen Listen ausdrucken . Mal sehen, wie das funktioniert. Wir werden chaotisch, wir bekommen Neymar und wir bekommen andere, wir bekommen jeden einzelnen Gegenstand dieses Schreibtisches, der ein E enthält. Dies ist ein Beispiel , das Sie sehen können. Ich verwende eine for-Schleife für Element in dieser Liste mit einer bedingten Anweisung. Und dann verwende ich eine Listenmethode, die die append-Methode ist, übergebe das Element, das ich durch die for-Schleife schleife. Dies ist ein gutes Beispiel für etwas , das Sie möglicherweise passieren müssen. Eine Kombination aus Befehlen und von Funktionen, die Sie während Ihrer Codierung nicht verwenden müssten . Hervorragend, also lasst uns jetzt eine Zusammenfassung machen. Je mehr wir unser Gehirn für stärker nutzen , wird es solange wir gut kalibriert sind, denn wenn wir unsere Grenzen zu stark überschreiten, könnten wir ausbrennen. Das ist es, was wir Ruhetage haben. Wir haben gesehen, wie for-Schleifen verwendet werden , um I travel Objekte zu durchlaufen. Es gibt mehrere Oktoberobjekttypen in Python, und einige, die wir bisher gesehen haben, sind Strings, Listen und Bereiche. Während Schleifen schleifen, solange die angegebene Bedingung als wahr ausgewertet wird . Dann haben wir gesehen, dass die kontinuierliche Anweisung die aktuelle Iteration der Schleife enthält und dann den Schüler die nächste fortsetzt. Und dann verlässt die break-Anweisung die Schleife ganz. Der Indexoperator gibt einen booleschen Wert zurück, true oder false, wenn sich das erste Objekt im anderen befindet. Schauen wir uns schließlich den Abschnitt „ Verstehen“ an. Dies ist der wichtigste Abschnitt des Tages. Denken Sie daran, weil es einen aktiven Rückruf beinhaltet und Sie sich tatsächlich in welches Wortlernen einlassen. Schau dir diese an und tu das für morgen. Und wenn Sie Hilfe benötigen, Sie im Chat in der Community fragen , die dort hilfreich sein wird. Und sonst viel Glück und wir sehen uns morgen. 17. Tag 14 - Wörterbücher: Willkommen am 14. Tag. Die heutigen Ziele müssen wir uns hauptsächlich auf Wörterbücher konzentrieren. Sie sollten sich mit Wörterbüchern befassen, wie man diese findet, wie man damit arbeitet und dann Wörterbuchmethoden. Lasst uns also direkt in die Lernsitzung springen. Der Hauptpunkt hier ist, dass ein Wörterbuch der Datentyp ist, der aus einer ungeordneten Sammlung von Schlüsselwertpaaren besteht, allgemein auch als assoziatives Array bezeichnet werden. Das ist es, was ein Wörterbuch ist. Nun schauen wir uns an, wie wir ein Wörterbuch definieren würden. Um ein Wörterbuch zu erstellen, verwenden wir die folgende Syntax. Also mein dict Gennari, das wäre ein Name einer Variablen die sein könnte, was immer Sie wollen, und dann geschweifte Klammern verwenden. Dies würde ein leeres Wörterbuch definieren. Wir können das mein leeres Wörterbuch nennen. Dann könnte mein Wörterbuch ungefähr so sein. Vorname. Sagen wir John. Nachname, sagen wir Smith. Dies wäre ein Beispiel für ein Wörterbuch mit Schlüssel-Wert-Paaren. Und dies wäre ein Beispiel für ein leeres Wörterbuch. Wörterbücher enthalten Elemente, die aus einem Schlüssel und einem Wert bestehen. Dies wäre also ein Element über dem Wörterbuch, und dann wäre dies ein weiterer Artikel des Wörterbuchs. Es sind durch ein Komma getrennt. Dann hätte der Schlüssel einen Wert zugewiesen. Und dann wären diese durch einen Doppelpunkt getrennt. Und wir würden jedes Element eines Wörterbuchs referenzieren, indem wir den Schlüssel folgendermaßen referenzieren. Also könnte mein Diktat, ähnlich wie wir es für list, firstname verwenden würden , meinen dict FirstName verwenden. Und wenn wir das ausdrucken und ausführen würden, könnten wir OK sehen, und es ist John. Sie können darüber nachdenken, ähnlich wie wir Indizes in einer Liste referenzieren. Aber hier verweisen wir auf den Schlüssel eines der Elemente des Wörterbuchs. Wenn wir dies mit einem Schlüssel ausführen würden , der im Wörterbuch nicht existiert. Und sagen wir zum Beispiel, Alter, wir würden einen Fehler bekommen, einen Schlüsselfehler. Es heißt Alter. Im Grunde geht es, es existiert nicht. Aber es gibt eine Wörterbuchmethode , die wir verwenden könnten. Sie nennt sich die Methode „Get-Methode“. Wir können den Schlüssel zu dieser GET-Methode bereitstellen. Und das Gute daran ist, dass es den Schlüssel nicht findet, wenn es nicht findet. Anstatt einen Fehler zurückzugeben, wird keine zurückgegeben. Wenn wir ihm eine Methode geben oder wenn wir ihm einen Schlüssel geben, tut mir leid, dass es existiert. Es wird den Schlüssel zurückgeben. Die GET-Methode ist also eine Möglichkeit, sich mit DR. fortzubewegen und wir könnten keine bekommen, wenn es nicht existiert. Sie können auch ein zweites Argument übergeben, bei dem es sich um den Wert als Standard zurückgegeben wird, wenn er nicht existiert. Wir können sagen, dass dies Alter haben wird. Und wenn wir das ausführen würden, würden wir sehen, okay, es kehrt zurück, hat kein Alter, weil es nicht den ersten Schlüssel findet , der getestet wird, oder es wird aufgefordert, einem Wörterbuch ein neues Element hinzuzufügen. Verweisen Sie einfach so, als würden Sie den Schlüssel referenzieren. Sagen wir also h in diesem Fall weisen Sie ihm dann einen Wert zu. Sagen wir 27. Dann drucken wir das noch einmal aus. Nachdem Sie die Werte zugewiesen haben, sehen Sie, was passiert. Es ist ein klares Terminal und führe es erneut aus. Wir sehen am Anfang und haben kein Alter, aber dann weisen wir dem H-Schlüssel einen Wert zu. Und dann können wir sehen, okay, es hat ein Alter und es wird tatsächlich das gesamte Wörterbuch gedruckt. Nur um zu sehen, wie das aussieht. Wir können FirstName John, LastName Smith, Alter 27 sehen . So weisen Sie einem Wörterbuchschlüssel einen Wert neu zu. es einfach neu zu, indem Sie auf den Schlüssel verweisen. Wie Sie es auch getan haben, weisen wir einen neuen Wert zu oder weisen ihn zu. Wenn wir zum Beispiel den Namen ändern wollten, könnten wir mein Wörterbuchdiktat sagen. Zuerst wären eckige Klammern, FirstName, und ich würde einfach den neuen Namen verwenden. Also können wir Mike sagen. Wenn wir das dann drucken, würden wir sie in diesem Wörterbuch sehen. Vorname Mike, Nachname ist Smith, Alter 27 Jahre. Wenn wir dann ein Element löschen wollten . an, lasst uns Nachname aus der Liste löschen. Wir haben also einfach eine delete -Anweisung verwendet, löschen und dann auf den Wert verweisen, auf den er verweisen würde, um ihn neu zuzuweisen, um einen neuen zu erstellen. Wenn wir das dann ausführen, würden wir das Finale sehen, das endgültige Wörterbuch war Vorname Mic, Alter 27 Jahre. Wie bei Listen können Wörterbücher verschiedene Arten von Objekten in den Schlüsseln enthalten . Dies könnte also auf eine Zeichenfolge verweisen. Wir haben so ziemlich jede Art von Objekt referenziert, wie Sie sich im Wörterbuch vorstellen können. Auch Wörterbücher in Wörterbüchern. Schauen wir uns nun ein paar Wörterbuchmethoden an. Es gibt drei Methoden , die nützlich sind. Das sind meine Wörterbuchschlüssel, die Key-Methode, dann die Werte-Methode dann die Items -Methode. Die Items -Methode. Mal sehen, was diese bieten. Screen Sie erneut und führen Sie es erneut aus. Wir können sehen, dass der Schlüssel in Ordnung ist, wir bekommen die Schlüssel, die Vorname, Nachname und Alter sind . Wir sehen, dass die Werte John Smith in 27 Jahren sind. Und dann können wir sehen, dass die Elemente so ziemlich das gesamte Wörterbuch sind, das eine Liste der Schlüssel-Wert-Paare in einem Tupel ist. So können wir wieder ein Tupel sehen. Wir werden bald sehen, wie dieser Datentyp aussieht. Aber es wird ziemlich viel die Schlüsselwertpaare zurückgeben, die Elemente in der Art und Weise. Wenn wir also sehen wollten, ob es einen bestimmten Schlüssel im Wörterbuch gibt, könnten wir die keys-Methode verwenden. Wenn wir also den Vornamen in meinem Wörterbuch sagen , drucken Sie, ja. Lassen Sie uns das ausführen und natürlich ja drucken, denn der FirstName dies in den Schlüsseln. Jetzt werden wir uns mit dem Durchlaufen eines Wörterbuchs befassen . Das erste, woran wir uns erinnern müssen ist, dass ich kein Wörterbuch durchlaufen würde. Wörterbücher sind ungeordnet. Es garantiert also nicht, dass wenn wir dieses Wörterbuch durchsehen, es FirstName, LastName und dichten Mythos durchläuft . Dann h, tut mir leid, in dieser Reihenfolge, insbesondere diese zu merken ist, werden sie nicht bestellt, so dass die Bestellung nicht garantiert wird. Es hat sie durchgeschaut. Aber lasst uns jede Instanz dessen durchgehen, was wir bekommen würden, wenn wir das Wörterbuch durchlaufen würden. Für item in meinem Wörterbuch, dict. Hier würden wir bekommen, wir würden bekommen, jeder Schlüssel wäre der gleiche wie für Punkt in meinem Diktat, Keith, das wäre gleichwertig. Vorname, Nachname und Alter. Wenn wir dann Werte machen würden , für seine Werte, würden wir John Smith 27 bekommen. Also jeder Wert. Dann, wenn wir Artikel machen würden, meine Wörterbuchgegenstände, würden wir den Vornamen John, Nachname Smith, Alter 27 Jahre bekommen . Es ist eine vereinzelte Art, diese großartige Möglichkeit zu finden, sich mit Ähnlichem zu befassen , schauen Sie sich das auch etwas später an. Aber es wäre zu sagen, denn um das Tupel auszupacken , nennen wir es Tupelauspacken. Wenn wir vier Schlüsselelemente in meinen Wörterbuchelementen und Druckschlüssel angegeben haben, drucken Sie den Artikel oder diesen so streng besser aus. F-Stamm. Strain sagt, dass Key KI gleich KI und dann Artikelwert ist. Wert. Weil dies leider gleich dem Wert wäre. Wenn wir das dann speichern würden, können wir sagen, okay, Schlüssel Vorname Wert John Key, LastName Wert Smith Schlüssel H-Wert 27. Es würde die Tupel entpacken, die wir von der Items Methode erhalten . Großartig, also lasst uns jetzt eine Zusammenfassung machen. Die Syntax zum Erstellen eines Wörterbuchs ist die folgende, indem geschweifte Klammern verwendet und Schlüssel zu Werten zugewiesen werden. Sie leere geschweifte Klammern, um ein leeres Wörterbuch zu erstellen Verwenden Sie leere geschweifte Klammern, um ein leeres Wörterbuch zu erstellen. Um dann auf den Wert eines Wörterbuchs zuzugreifen, verweist auf einen Schlüssel, der diese Notation für eckige Klammern verwendet. Um dann neu zuzuweisen, weisen Sie einfach den Wert neu zu, indem Sie auf den Schlüssel verweisen und einen neuen Wert zuweisen, um ein Element zu löschen, auf einen Schlüssel zu verweisen und eine DDL-Anweisung zu verwenden, die delete Anweisung zum Löschen des Löschens dieser Gegenstand. Wir haben auch neue Wörterbuchmethoden, die GetMethod-Schlüssel, die Werte und die Items-Methode gelernt . Schließlich gibt es eine Anmeldung im Abschnitt „ Verstehen“. Hier haben Sie vier Fragen für heute. Erinnern Sie sich immer an diesen wichtigsten Teil des Tages, stellen Sie sicher, dass wir unsere Übungen machen, und dann überschreiten wir unsere Grenzen und lernen jeden Tag. Wenn Sie Probleme damit haben, Sie Fragen dazu, Sie sie gerne nach Schuss in der Community fragen und werden dort aktiv sein. Ansonsten viel Glück und wir sehen uns morgen wieder. Wir sehen uns. 18. Lektion 15: Willkommen zu einem weiteren Ruhetag heute Lassen Sie uns verinnerlichen, was wir bisher gelernt haben, und kehren Sie zu allen Lektionen zurück, die Sie meiner Bedarfsprüfung ausfüllen. Denken Sie daran, dass die Übungen der wichtigste Teil eines jeden Tages sind. Dann haben wir die drei Schlüssel zum Lernen, die wir bisher für Fragen gesehen haben. Wir wissen also, dass wir offen bleiben, neugierig sein und mit dem Verstand eines Anfängers lernen , um Konsistenz zu erzielen. Wir wissen, dass wir jeden Tag zurückkehren und ihm alles geben müssen , was wir haben. Sie werden anfangen, eine Lösung zu sehen, und Sie werden es nicht bereuen , ihm Ihre besten Fünf für die Wiederholung des Weltraums Es geht um aktiven Rückruf, da es eine großartige Übung für das Gehirn ist, wo Lernen und es hilft uns, Dinge vom Kurzzeitgedächtnis zu bewegen. Wiederholung der Themen nach Ruhe und Erholung hilft uns, die Vergessskurve zu zerquetschen. Achten Sie immer darauf, sich auszuruhen und zu erholen. Aber danke, dass du zurückgekommen bist und dir einen tollen Ruhetag nimmst und wir sehen uns morgen wieder. 19. Tag 16 - Tulpen und Sets: Willkommen zum 16. Tag. Die heutigen Ziele, die wir konsequent haben , sind der Schlüssel zum langfristigen Wachstum. Und wir müssen uns Tupel anschauen, die Tupelzuweisung untersuchen, dann Sets und dann einige Methoden für diese Sets suchen. Gehen wir jetzt in den Lernbereich. Denken Sie daran, dass sich die täglichen Erhöhungen im Laufe der Zeit und das langfristige V2-Wachstum verstärken . Denken Sie auch an die Wachstumstabelle und wie wir den Wert von Enttäuschungen, Tupeln oder einem Datentyp achten sollten , der es uns ermöglicht , eine geordnete Sammlung von Artikeln in einer Variablen zu speichern . Tupel sind unveränderlich, was bedeutet, dass sie nicht geändert werden können. Die Elemente eines Tupels können von Ende eines beliebigen Typs gemischt werden , einschließlich anderer Tupel. Um ein Tupel zu erstellen, verwenden wir einfach die runden Klammern, um mein Tupel zu erstellen. Zum Beispiel könnte ich das machen. Das andere, und das wäre ein Tupel mit drei Gegenständen darin. Wenn wir ein Tupel mit einem einzelnen Wert erstellen wollten, würden wir, wenn wir es so machen würden, einfach mein Tupel der Zeichenfolge zuweisen. Das. Dies würde nicht funktionieren, um ein Tupel mit einem einzelnen Wert zu erstellen. Wir müssten ein Komma hinzufügen, um es zu erstellen, zu betonen, dass es sich um ein Tupel handelt und dies zu einem Tupel mit einem einzelnen Wert führen würde. Tupel sind nützlich, wenn Sie Daten haben, von denen Sie wissen, dass sich nicht ändern und sich während der Dauer Ihres Programms nicht ändern sollten . Wenn Sie beispielsweise eine Woche oder einen Monat von Monaten des Jahres angeben möchten , werden Buchstaben des Alphabets für Daten verwendet , die Sie während Ihres gesamten Programms nicht ändern möchten. Genau wie bei Listen können wir auf den Wert eines Tupels verweisen, können wir auf den Wert eines Tupels verweisen indem wir die Notation der eckigen Klammer verwenden. Wenn wir diesen Wert beispielsweise drucken wollten, führen Sie diesen aus und wir würden ihn auf den Bildschirm drucken , der einen zweiten Wert hat. Denken Sie daran, dass diese 00 die Indizes basiert, die 0 neu gedruckt wurden, wir würden dies drucken. Wir können auch die Elemente eines Tupels schleifen, durchlaufen. Mit einer for-Schleife würden wir bekommen, was wir erwarten, nämlich das, das und andere nach dem Tod , den wir vorher gemalt haben, um ein oder zwei Tupel insgesamt zu löschen, können wir eine löschende Anweisung verwenden. Dies löscht das gesamte Tupel. Denken Sie daran, dass wir nicht löschen können. Wir können einzelne Leben nicht aus dem Tupel löschen einzelne Leben nicht aus dem Tupel , weil sie unveränderlich sind. So wie wir die List-Funktion haben, haben wir auch eine Tupelfunktion. Wir könnten mein Tupel verwandeln, wir könnten es in eine Liste verwandeln. Wir könnten es als Tupel behalten, wäre redundant , es hier hinzuzufügen, aber Sie würden verstehen, dass es genauso funktioniert wie diese Funktion. Wir sehen hier, wie es in eine Liste gedruckt wird. Wir können das Gleiche in ein Tupel verwandeln. Es gibt auch eine Tupelzuweisung, das heißt, dies wäre eine Tupelzuweisung. Wir haben den Variablennamen und dann haben wir die Elemente der Tupel, die wir in das Tupel aufnehmen möchten . Das nennt man Packen. Das hieß „Packen“. Dann könnten wir diese Syntax auch verwenden , um dieses Tupel zu entpacken und zu entpacken. Auspacken. Dies kann sich als nützlich erweisen, da wir jetzt auf die verschiedenen Variablen verweisen können . Die verschiedenen Variablen , die wir durch einfaches Entpacken der Tupel zugewiesen haben . Sie können diesen Farbstoff einen anderen sehen, weil wir diesen und einen anderen Punkt zugewiesen haben , indem wir das Tupel auspacken. Denken Sie einfach an das Auspacken, denn es wird nützlich sein , weiter zu schauen, beim Packen. Wir können sehen, dass es auch für Listen funktioniert. Dieses Ein- und Auspacken wird also auch für die Liste beibehalten. Hier haben wir eine Funktion, die zwei Argumente aufnimmt und einfach die Argumente nacheinander druckt, getrennt durch ein Komma und ein Leerzeichen das buchstäblich alles ist, was die Funktion aktualisiert. Dann haben wir definiert, dass meine Liste zwei Werte hat, dies und das. Es stellt sich heraus, dass wir, wie ich bereits erwähnt habe, auch den Stern und den Doppelstern verwenden könnten , um Listen bzw. Wörterbücher zu entpacken . Wenn wir meine Funktion ausführen wollten, könnten wir sie so ausführen. Wegen des Sterns würde ich meine Liste in zwei separate Argumente entpacken in zwei separate Argumente und wir werden sie als zwei separate Argumente in eine Funktion übergeben. Wenn ich das ausführen würde, würden wir sehen, dass es funktionieren würde. Es wird dieses Komma-Leerzeichen drucken. Und weil der Stern auf die gleiche Weise zum Auspacken funktioniert , könnten wir die Doppelstern-Notation verwenden , um ein Wörterbuch zu entpacken. Wenn wir ein Wörterbuch haben und alles eingerichtet ist, um ein Wörterbuch zurückzugeben. In diesem Fall würde es für diesen Fall natürlich nicht funktionieren , weil ich nicht definiert wurde. Und die Funktion ist stattdessen richtig, wir könnten eine Doppelstrang-Notation verwenden ein Wörterbuch zu entpacken. Wir könnten auch Tupelzuweisung mit dem verwenden , was von einer Funktion zurückgegeben wird. Nehmen wir an, diese Funktion nimmt zwei Argumente auf und gibt einfach die beiden Argumente zurück. Dann gebe ich es wie zuvor weiter, ich weise etwas zu, ich führe die Funktion aus. Zuallererst führe ich die Funktion aus. Also stoßen wir auf die Funktion, ich übergebe sie in meiner Liste , wenn ich meine Liste in zwei separate Argumente packe. Dass dies ausgeführt wird, wird die beiden separaten Argumente einfach zurückgeben, und das ist alles, was tun wird. Aber die Sache ist, dass wenn es sie in dieser Syntax, also Argument eins , Argument zwei durch ein Komma getrennt, auf diese Weise zurückgibt Argument eins , Argument zwei durch ein Komma getrennt, , ein Tupel der beiden Argumente zurückgeben würde. Also könnte ich hier mein Tupel sagen. Dann könnte ich mein Tupel auf einen Bildschirm drucken. Und wenn ich das durchführe, konnten wir dies und das als Tupel sehen. Genauso wie wir diese Funktion ausführen , die zwei separate Argumente zurückgibt. Wir könnten es so ausführen, Wert eins und Wert zwei. Dann können wir sagen, okay, lassen Sie uns versuchen, den Wert eins und den Wert zwei zu drucken , um zu sehen, was wir bekommen. Dann können wir sehen, okay, wir bekommen ja, wir verstehen das und das verstehen wir auch. Wir sehen, dass wir von einer Funktion zurückkehren können die die verschiedenen durch Kommas getrennten Objekte getrennt sind. Und dies würde ein Tupel mit den separaten Objekten erzeugen. Und dann könnten wir entweder das Tupelauspacken verwenden oder wir können es einfach als Tupel verpacken und dann können wir diese Werte separat drucken. Schließlich schauen wir uns auch die Sets an. Setzt also auf einen Datentyp , mit dem Sie mehrere Elemente in einer einzigen Variablen speichern können. Sie sind einer von vier integrierten Datentypen in Python, die für Speichersammlungen von Daten verwendet werden. Die anderen drei sind Listen, Tupel und Wörterbücher. Dann lassen Sets keine doppelten Werte zu, die bei geordnet und indiziert unveränderlich sind. Der relevante Teil hier ist, dass Sets keine doppelten Werte zulassen. Um ein Set zu erstellen. Wir benutzen geschweifte Klammern. Sie können sagen, dass mein Set gleich dem Wert eins ist, Wert zwei Wert, und dann mein Set drucken. Wir können sehen, dass es auf den Bildschirmwert eins bis w gedruckt Bildschirmwert eins bis wird. Und Sie können sehen , dass es ungeordnet ist. So kann es zu einem zufälligen Auftragsbuchwert erreicht und in den Fall gefallen sein. Wichtig ist, dass sie keine doppelten Werte akzeptieren können. Wir können ein Set immer in eine Liste verwandeln. Verwenden der List-Funktion. Wir können die Set-Funktion immer auch verwenden , um das Gegenteil zu tun, um ein Set anzuhören. Ein Beispiel dafür wäre, dass wir eine Liste mit Wert n hatten, und lassen Sie uns den Wert wiederholen. Was ist, wenn wir eine Liste drucken. Dann habe ich mein Set erstellt und meine Liste gesetzt dann mein Set gedruckt. Mal sehen, was hier passiert. Löschen Sie den Bildschirm unten und führen Sie ihn aus. Wir sehen, dass wir meine Liste bekommen. Natürlich wissen wir, dass wir ein Set bekommen, weil wir es als Set definiert haben , weil es geschweifte Klammern gab. Im Moment sind wir Finanzierungsliste. Jetzt sollte es also klappen. Okay, wir verpassen hier ein Komma. Im Moment funktioniert es. Wir haben die Liste, die einen Wert hat, um zwei zu bewerten und den Wert n durch Kommas getrennt und dann eine Liste erstellt zu haben. Aber wenn wir das Anhören eines Sets umdrehen, sehen wir tatsächlich, dass auch dieser Wert, ein Duplikat ist , entfernt wird, weil es einen duplizierten Satz handelt, keine Duplikate hat. Wann immer wir das in ein Set verwandeln, sehen wir, dass wir es in den Einzelwerten bekommen. Keine wiederholten Werte. Um ein paar Methoden zu untersuchen, wollten wir uns die Add-Methode ansehen. Wir konnten also sehen, dass wir nur einen weiteren Wert hinzufügen könnten , wenn wir ihn ausführen, wir würden sehen, okay, wir haben das Set von oben wertvoll gemacht. Wir können auch sehen, dass wir den Wert der Methode remove verwenden können , um beispielsweise zu entfernen. Dann sagen wir, okay, wir werden m Wert eins im Set auswerten . Es gibt auch eine Gewerkschaftsmethode. Das wäre also, wenn wir ein anderes Set hätten, meinen Wert von drei. Okay, lass uns Wert, Wert, eins sehen. Wert für ein Beispiel. Dann haben wir unsere Gewerkschaft gemacht. Ich wollte glauben, dass dies genau zurückkehren würde. Ich denke, dies würde dazu einen Kommentar zurückgeben. Bildschirm für mehr Übersichtlichkeit. Dies würde die Vereinigung beider zurückgeben . Okay, also genau. Wenn wir also zwei verschiedene Sets haben, haben wir eines der Sets und machen dann eine Gewerkschaft. Der zweite Satz würde den Wert 1234 und den Wert n zurückgeben. Beachten Sie, dass die wiederholten Werte innerhalb der beiden, die beiden Sätze, die Wert eins sind, selbst in der Union nicht wiederholt werden. Die Gewerkschaft ist so ziemlich alle Gegenstände, die alle auf den Werten waren , die in beiden Sätzen enthalten sind. Und diejenige, die Sie mit der Union erstellt haben und die , die Sie als Eingabe für die Union-Methode hinzugefügt haben. Aber dann würde es die wiederholten Werte nicht enthalten. Es gibt einen anderen, einen anderen Satz namens Schnittpunkt, der etwas Ähnliches wie eine Union ausführt, aber es betrachtet diejenigen, die die gemeinsamen Werte sind, und dann gibt es gemeinsame Werte zurück. So können wir hier sehen, dass der gemeinsame Auswertungsschnittpunkt zwischen den beiden Sätzen Wert eins ist, was korrekt ist , da dies ein Wert eins und ein Wert ist, der Wert in den beiden Sätzen zusammenfällt. Genial, also lasst uns jetzt eine Zusammenfassung machen. Wir haben gesehen, dass tägliche Verbesserungen zu einem langfristigen exponentiellen Wachstum führen . Man kann sich vorstellen, dass Tupel unveränderliche Listen sind. Sie sollen sich nicht ändern, sobald sie erstellt wurden. Erstellen Sie ein Tupel mit der folgenden Syntax mit runden Klammern. Und es kann eine beliebige Kombination von Objekttypen enthalten. Erstellen Sie mit der folgenden Syntax ein Tupel mit einem einzelnen Wert. Nicken mit einem Komma am Ende des ersten Wertes. Referenzieren Sie Tupelelemente auf die gleiche Weise wie diese mit einem nullbasierten Indizes. Zum Beispiel, mein Tupel, wir sind wieder bei drei. Die Tupel-Anweisung gibt ein leeres Tupel zurück oder gibt ein Tupel aus einem anderen schrecklichen Objekt zurück. Die gleiche Weise wie die Listenfunktion für diese Tupelzuweisung funktioniert wie folgt. Wenn Sie ein Tupel packen möchten, schreiben Sie zuerst den Variablennamen und führen dann die Werte getrennt durch Kommas und in runden Klammern aus. Und wenn Sie entpacken möchten, schreiben Sie die durch Kommas getrennten Variablennamen auf und verweisen dann auf den Wert oder referenzieren eine Variable, die auf dieses Tupel zeigt. Objekt. Sets sind ähnliche Tupel und listet die Hauptunterschiede auf, die besagen, nicht ausrichten, doppelte Werte zulassen, und unser ungeordnetes und unendliches Indexdatum für indizierte, wie Tupel, Sets sind unveränderlich. Die set-Funktionsanweisung funktioniert ähnlich wie diese List-Funktion und die Tupelfunktion. Dann werden die neuen Set-Methoden oder die Add-Methode-, Vereinigungs- und Schnittmethoden erlernt . Schauen wir uns schließlich den Abschnitt „ Verstehen“ an. Wir haben heute ein paar Fragen , sechs Fragen. Denken Sie noch einmal daran, dass dies der wichtigste Teil ist, nur um zu sehen, dass wir lernen, und um sicherzustellen, dass wir das, was wir lernen, verinnerlichen. Viel Glück mit diesen Beiträgen alle Fragen, die Sie im Chatbereich haben, im Community-Bereich werden dort aktiv sein. Und viel Glück und wir sehen uns morgen wieder. 20. Tag 17 - OOP - Unterricht Definition: Willkommen auf Date 17. Und schauen wir uns die heutigen Ziele an. Wir werden uns ansehen, wie Fragen die Antwort sind. Wir werden uns Pythons Dokumentation ansehen. Wir werden uns mit der objektorientierten Programmierung befassen. Oop, und wie alles in 500 ein Objekt ist. Die wichtigste Frage wenn Sie auf die heutige Frage schauen, was ist eine Klasse in Python? Springen wir direkt in den Lernbereich. Ich möchte Sie daran erinnern, während des Kurses weiterhin Fragen zu stellen. Da Fragen Ihre Aufmerksamkeit auf Antworten und Antworten lenken , kann sich die Zeit ändern. Denken Sie an den Elefanten und wie die einmalige Beantwortung der Frage und das ungewisse Ungewiss bei Sensoren im Laufe der Zeit ändern könnte. Deshalb wollen wir ständig Fragen stellen. Ein großartiger Ort, um Fragen beantworten zu lassen , ist Pythons Dokumentation. Programmiersprachen haben in der Regel eine großartige Dokumentation mit allen richtigen Informationen. Und selbst erfahrene Programmierer , die seit Jahren programmieren, nutze ich ständig die Dokumentation um ihr Wissen zu aktualisieren. Das Lesen von Dokumentation kann jedoch manchmal einschüchternd sein , da es viele Details enthält. Deshalb würde ich in der Regel mit sehr spezifischen Fragen, auf die ich antworten wollte, in die Dokumentation gehen mit sehr spezifischen Fragen, auf die ich antworten wollte, in die Dokumentation . Um zu erfahren, was objektorientierte Programmierung ist, müssen wir eine sehr spezifische Frage beantworten, nämlich was unsere Klassen in Python sind. Die Frage, die wir nachschlagen werden, ist, was unsere Klassen in Python haben. Wir werden Dokumentation sagen. Wir haben versucht, die Dokumentation gezielt zu erhalten. Wir werden den python.org-Link als offizielle Dokumentation nachschlagen . Jetzt können Sie hier sehen, dass es wirklich schwer, textlastig ist , weil es viele Details in vielen Informationen enthält. Und deshalb sage ich, dass es eine so großartige Ressource ist. Aber wenn Sie eine so spezifische Frage haben, genau wie wir, müssen wir nur wissen, was ist, wenn es Klassen sind. Für dieses konkrete Beispiel werden wir uns nur den ersten Absatz in der Dokumentation ansehen . Kopieren wir diesen Absatz hier drüben. Was wir tun werden, ist, dass wir hier jede spezifische Themenwürfelreferenz sehen werden. Wir werden uns ansehen, was das sind. Nehmen wir an, Klassen bieten eine Möglichkeit, Daten und Funktionen zu erstellen. Funktionalität zusammen. Erstellen einer neuen Klasse. Neue Klasse erstellt einen neuen Objekttyp. Neuer Objekttyp, dem neue Instanzen und Instanzen des Typs dieses Typs erstellt werden können. Jede Klasseninstanz kann ein Attribut haben, kann ein Attribut angehängt haben , um ihre Zustände beizubehalten. Glass diese Instanz gibt, kann auch Methoden haben , die von seiner Klasse definiert werden, um ihren Status zu ändern. Im Moment mache ich dies, um Ihnen zu zeigen, wie es einfacher zu verstehen wird, wenn wir die Dinge in überschaubare, mundgerechte Schritte aufteilen . Jetzt werden wir uns mit diesen Themen gezielt befassen und beginnen zu verstehen, was diese bedeuten. Weil ich wirklich denke, dass dieser Absatz für Sie wie eine Fremdsprache klingen könnte , und das wäre, machen Sie jetzt aufgrund der Phase, in der wir in Python lernen, absolut sinnvoll . Dies soll Ihnen jedoch zeigen, dass wir etwas, das wie eine vollständige Fremdsprache klingt , in etwas völlig Verständliches verwandeln können, indem wir es in mundgerechte Stücke zerlegen. Das werden wir anfangen zu verstehen, was jeder von diesen bedeutet. Und das wird uns diesen Absatz vollständig verstehen lassen. Es stellt sich heraus, dass es viele Programmierer gibt und Leute, die Python schreiben , die nicht einmal verstehen, was diese Konzepte sind. Und deshalb werden sie so ein Vorteil für dich sein , sie gut zu verstehen. Es stellt sich auch heraus, dass, sobald Sie verstehen, was eine Klasse ist, alles andere Thema der anderen Themen kurz sein werden, weil sie es sind, sie sind sehr miteinander verbunden mit dem, was eine Klasse ist. Und es stellt sich heraus, dass wir diese Konzepte verstehen müssen, um zu verstehen, was objektorientierte Programmierung ist , die ich Ihnen zeigen werde, wie es schwierig ist. Fangen wir mit einem Beispiel an. Sie können sich als Architekt vorstellen und Sie haben einen Entwurf eines Hauses. Sie können das Haus mit der Blaupause in so vielen verschiedenen Städten auf der ganzen Welt bauen der Blaupause in so , wie Sie möchten. Du kannst nach Paris fahren und ein Haus bauen. Du kannst nach Neuseeland fahren und ein Haus bauen. Du kannst zu gehen. Barcelona kann nach Hawaii oder so viele Häuser fahren, die Sie möchten. Am Ende wäre jedes Haus sein eigenes Haus. Aber sie hätten alle viele Ähnlichkeiten, da sie mit demselben Entwurf erstellt wurden. In diesem Beispiel ist der Blueprint die Klasse und die Häuser wären die Instanzen dieser Klasse. Die Blaupause wäre also die Klasse und die Häuser wären die Instanzen dieser Klasse. Sie können sich eine Klasse als Blueprint für einen bestimmten Objekttyp vorstellen . Auch der Begriff Klasse und Typ werden in Python austauschbar verwendet. Sie können diesen Blueprint verwenden, um einzelne Instanzen zu erstellen, die sowohl in ihren jeweiligen Daten als auch in der Funktionalität Ähnlichkeiten aufweisen sowohl in ihren jeweiligen Daten als auch in der Funktionalität Ähnlichkeiten aufweisen . Es stellt sich heraus, dass wir die ganze Zeit mit Kursen gearbeitet haben. Die Liste ist ein Beispiel. Wenn ich meine Liste habe, eine gleich C, können wir sehen, dass wir sehen, dass wir sehen, dass es sich um eine Klasse handelt , die Liste genannt wird. Wenn wir eine andere Liste erstellen, sagen wir „Liste zwei“. Der NF-Drucktyp, meine Liste zwei, wir erhalten die gleiche Klasse des Typs, Klasse des Namens oder den Namen der Klassenliste, die auch der Typ ist. So können Sie den Typ in Klasse austauschbar verwenden. Wir können sehen, dass es zwei Instanzen gibt, die in separaten Instanzen derselben Klasse getrennt werden müssen. Die Klasse ist also derselbe. Blaupausen sind die gleichen, aber die Häuser sind unterschiedlich. Instanzen sind unterschiedlich. Denken Sie daran, als wir über die Listenfunktion gesprochen haben, nennen wir sie die Tupelfunktion, diese Funktion, all diese Funktionen. Es stellt sich heraus, dass es sich nicht wirklich um Funktionen handelt, sondern tatsächlich Klassen sind. Wenn wir beispielsweise versuchen, den Listentyp zu drucken , erhalten wir einen Klassentyp. Denken Sie daran, dass der Typ im Klassenzimmer austauschbarer Schalter tatsächlich Klasse hat. Wenn wir dies beispielsweise mit dem Typ der Druckfunktion vergleichen, dem Typ der Druckfunktion sehen wir , dass es sich um eine integrierte Funktion oder Methode handelt. Wir können also sehen, dass der Druck tatsächlich eine Funktion oder Methode ist und die Liste keine Funktionsmethode ist, sondern tatsächlich eine Klasse von sich selbst ist. Wir können unsere eigenen Klassen mit der folgenden Syntax erstellen . Wir sind im Unterricht geblieben. Dann der Name der Klasse. Der Name der Klassen wird konventionell großgeschrieben. Dann können wir sagen „Pass“ hier runter. Dann lasst uns den Drucktyp meiner Klasse machen, um zu sehen, was wir bekommen. Lass es mich sehen. Okay, hier bekommen wir eine Klasse von Klassentyp, die das getan hat, weil es heißt, dass es eine Klasse von sich selbst ist. Großartig. Also, wenn wir den Typ davon drucken, was das Beispiel war, das wir vorher gemacht haben. Klasse des Klassentyps. Genial, das ergibt Sinn. Das sagt uns, dass wir unsere eigene Klasse erstellt haben und dies entspricht der Liste. Um unsere eigene Instanz einer Klasse zu erstellen. Auf der anderen Seite würden wir so etwas laufen lassen. Meine Klasse, sag meine Klasse eins, eine, meine Klasse, meine Klasse, und nenne es dann eine Fünfte. Ähnlich wie Sie eine Funktion aufrufen würden. Wir nennen es so. Und wenn wir es dann drucken, wenn wir den Typ meiner Klasse drucken würden, meine Klasse eins, konnten wir sehen, dass es sich um eine Klasse von Maine handelt. Mein Klassenhaupt verweist einfach darauf , dass es ein anderes Skript ist , das als Hauptskript läuft. Und dann ist meine Klasse eine Klasse, die in dem Skript definiert ist , das die Rundung des Hauptskripts darstellt. Dies ist ähnlich wie bei uns, als würden wir meine Liste erstellen. Wir würden eine Liste erstellen. Und dann drucken wir den Typ meiner Liste aus. Wir würden wie erwartet Klassenliste bekommen. Jetzt haben wir hier viele Fortschritte gemacht. Wir haben zum Beispiel diese Klassen oder sind das Äquivalent des Typs. Wir können also Klassen oder Objekttypen sagen . Typ der Objekte , die den Blueprints entsprechen, um neue Instanzen zu erstellen. Instanzen. Jetzt haben wir also neue Instanzen in neuer Klasse, damit wir diese verschieben können. Klicken Sie dann auf Neue Klasse erstellen. haben wir auch schon gezeigt. Jetzt behalten wir also folgendes. Wir haben in unseren Klassen oder Objekttypen oder gleich den Blueprints verwendet, um die neuen Instanzen zu erstellen. Und dann müssen wir immer noch verstehen, welche Datenfunktionalität Attribute, Datierungsmethoden sind. Aber wir waren bereits mit einem Haufen davon vertraut und Sie werden sehen, sobald wir darauf eingehen, aber im Moment haben wir das und wir haben gute Fortschritte beim haben wir das und wir haben gute Fortschritte beim Verständnis erzielt, was das bedeutet, dass was anfangs so gut wie eine Fremdsprache begann , wir, was anfangs so gut wie eine Fremdsprache begann, gute Fortschritte machen. Und das wird es für den heutigen Lernbereich sein. Großartig. Also lasst uns jetzt eine Zusammenfassung machen. Wir haben gesehen, dass Fragen sind, sind die Fragen Ihre Aufmerksamkeit, um effektiver beantwortet zu werden und zu absorbieren? Wir haben gesehen, dass Python ein großartiger Ort ist , um detaillierte Erklärungen zu finden. Und der beste Weg, die Dokumentation zu verwenden, besteht darin sehr spezifische Fragen zu beantworten , die bereit sind, die Antworten aufzunehmen. Alles in Python ist ein Objekt und damit was Python ist. Deshalb ist Python eine objektorientierte Programmprogrammiersprache. Jedes Objekt hat seinen Typ oder seine Klasse. Der Begriff Klasse und Typ werden in Python austauschbar verwendet. Beispiele, die wir haben, wir haben mit dem String-Typ, der Liste, dem Tupel, dem Wörterbuch usw. gearbeitet . Denken Sie an eine Klasse ist eine Blaupause eines Hauses. Und einzelne Häuser, die daraus gebaut wurden , um als Instanzen dieser Klasse zu malen. Zum Beispiel wäre eine Klasse eine Liste. Wenn Sie jedoch eine tatsächliche Liste erstellen, wäre das eine Instanz dieser Klasse. Als Nächstes werden wir morgen sehen, wie Klassen mit Daten und Funktionen umgehen können, und Sie werden sehen, wie wir die ganze Zeit damit gearbeitet haben . Abschließend in den Abschnitt „ Verstehen“. Ich habe heute ein paar Fragen an Sie bei fünf Fragen. Also viel Glück damit und stellen Sie alle Fragen , die Sie haben könnten. Und wenn Sie mit einer dieser Punkte blockiert sind, zögern Sie nicht, im Chat zu fragen, und der Community-Bereich wird dort aktiv sein. Aber wir sehen uns. Viel Glück damit und wir sehen uns morgen. 21. Tag 18 - OOP - Klassenattribute und Methoden: Dies ist Tag 18. Für die heutigen Ziele haben wir die Vergessskurve mit Weltraumwiederholung und aktivem Rückruf zerquetscht . Sie haben benutzerdefinierte Klassen, Klassen, Daten, Klassenfunktionalität und Donner- oder magische Methoden. Springen wir direkt in den Lernbereich. Denken Sie daran, dass wir die Vergessskurve mit Weltraumwiederholung und aktivem Rückruf zerquetschen . Im Laufe der Zeit werden Sie feststellen, wie Ihr Gehirn stärker wird und Sie können andere Dinge in Ihrem täglichen Leben einfacher und konzentrierter tun. wir dorthin zurückkehren, wo wir aufgehört haben, denken Sie daran, dass dies früher ein Absatz war, der für uns wie eine Fremdsprache klang. Und jetzt fangen wir an, es besser zu verstehen. Wir haben die Klassen oder der Typ von Objekten, die Blueprints entsprechen , um neue Instanzen zu erstellen, wir haben, dass Klassen sowohl Beta als auch Funktionen und Attribute enthalten können , die einen Status erstellen und dann auch Methoden. Und wir werden sehen, wie sich das alles mit dem verbunden hat. Jetzt, da wir wissen, was eine Klasse ist und wie wir unsere eigene erstellen können, sprechen wir darüber, wie Klassen ihre eigenen Daten speichern können. Wir speichern diese Daten ähnlich wie bei Variablen, die wir bisher gesehen haben. Wir nennen diese Klassenvariablen Attribute. Wir können sowohl Klassenattribute als auch Instanzattribute haben . Die Unterschiede, dass ein Klassenattribut für alle Instanzen gleich ist. Und eine Attributinstanz ist für jede Instanz eindeutig. Wenn Sie ein veränderbares Objekt als Klassenattribut deklarieren und es in einer Instanz ändern. Es wird sich auch für alle anderen Instanzen ändern. Wenn Sie jedoch ein veränderbares Objekt als Klassenattribut erstellen , weist NS das Klassenattribut einer Instanz neu zu. Diese Instanz verweist nun auf das neue Objekt, das ihr zugewiesen wurde, aber alle anderen Instanzen behalten das ursprüngliche Klassenattribut bei. Lassen Sie uns hier ein Beispiel machen und sagen, dass wir eine Klasse schaffen werden, die ein Haus repräsentieren wird . Das ist auch eine Punkt-Doc-Zeichenfolge zuzuweisen, das heißt Klasse, um House darzustellen. Jetzt erstellen wir hier die Klassenattribute innerhalb der Klassendefinition selbst. Nehmen wir an, das erste Attribut, das wir als Stadt zuweisen möchten, wir werden sagen, dass die Stadt in der sich das Haus in Barcelona befindet, Schlafzimmer sagen werden. Wir werden sagen, es wird ein Drei-Schlafzimmer sein. Und dann in einer Wohnung mit zwei Bädern. Dann können wir so etwas wie Floor sagen. Sagen Sie, es hat Sie können Fliesen, Hartholz, Teppich haben. Es ist eine Liste mit den verschiedenen Arten von Böden eines Fußbodens, die es hat. Und Sie können sehen, dass Sie sogar ein boolesches Attribut haben, das besagt, dass es Pool hat und gleich wahr sagt, es muss sich bündeln. Dies kann eine Definition unserer Roboterklasse sein. Dann können wir später sagen: Okay, Lassen Sie uns zuweisen, erstellen Sie zwei Instanzen dieses Klassenhauses. Wie würden wir das machen? Nun, wir können sagen, wie s1 gleich Haus, dann Haus gleich Haus. Dies würde zwei separate Instanzen derselben Klasse erzeugen , denselben Haus-Blueprint, oder? Es ist also ein Blueprint, der jetzt zwei separate Instanzen erstellt hat . Dann können wir zum Beispiel jetzt sagen, dass wir einige Änderungen vornehmen können. Wir können sagen, dass zwei Haus zu Stadt, wir werden es in Sydney umstellen. Dann hat Haus zwei Schlafzimmer das um ein Minus gleich eins verringert. Haus zwei Badezimmer. Sagen wir das Gleiche minus eins und verringern Sie es einfach um eins. Wir ändern uns, wir ändern die zweite Instanz des Hauses oder wir haben erstellt, damit wir die Attribute ändern und sehen können , was passiert, richtig? Dann sagen wir Haus, zwei Etagen. Entfernen erzwingen. Nun, lass es mich genau sehen. Fußböden. Entfernen. Wir werden den Hartholz-Hartholzboden entfernen. Es ist großartig. Lasst uns nun folgendes machen. Ich werde diesen Teil überspringen, aber so ziemlich was ich tun werde, ist, dass ich jeden einzelnen Aspekt jedes einzelnen Attributs jeder Instanz ausdrucke jeden einzelnen Aspekt jedes einzelnen Attributs jeder , damit wir es sehen und vergleichen können gegen die beiden. Los geht's. Wir haben eine blendende leere Zeile gedruckt, und dann drucken wir eine Beschreibung Attribute einer Instanz des Druckerhauses steht. Der nächste hat es einfach getan. Print city, one, city of house1, alles mit f-Strings. Und dann haben sie einen Titel gemacht bei dem die Stadt es kapitalisieren würde. Dann haben wir Schlafzimmer, Badezimmer, Böden, die dem Boden entsprechen sollten. Hat einen Pool wahr oder wahr oder falsch. Und dann genau das Gleiche, aber für das Haus zu Hause zum Beispiel. Mal sehen, was passiert , wenn wir das ausführen. Wir bekommen das erste, Barcelona drei, Schlafzimmer zu Bad, Fliesen und Teppich. Das ist schon merkwürdig , weil wir Fliesenteppich im Hartholz haben sollten . Dann haben wir auch das Haus, wenn wir dort haben, wo wir erwarten, dass Sidney zwei Schlafzimmer, eins nach zwei Schlafzimmer, ein Badezimmer, Fliesenteppich und einen Pool hat. Stimmt. Was hier passiert ist, dass wir, wenn wir dies tun , als wir dies zur zweiten Instanz gemacht haben, dies tatsächlich mit demselben Objekt tun , das hier oben enthalten ist, und es ist zugewiesen der Klasse gesättigt. Aus diesem Grund ändert sich jede einzelne Instanz, die damit erstellt wurde, mit diesem Klassenattribut. Wo wir dies verhindern müssen , ist eigentlich das Folgende. Wir müssten sagen, Haus zwei Etagen zu beherbergen, Etage gleich Haus, Haus zu Etage. Kopieren. Wir müssten eine Kopie davon erstellen. Dann können wir von Haus zu Boden sagen, Hartholz entfernen. So würden wir es machen. Wir würden dieses perfekte Haus betreiben, eines können wir sehen, dass es harten Holzteppich Stil ist und wie suis Fliesen Teppich nur basierend auf Nein, Wir haben gesehen, dass Daten tatsächlich durch Attribute sind. Attribute. Funktionalität. Es stellt sich heraus, dass , um unseren Klassen Funktionalität hinzuzufügen wir dies durch die Nachrichtenmethode tun, um unseren Klassen Funktionalität hinzuzufügen, einfach durch die Methoden. Wie machen wir das? Denken Sie daran, wie wir über Methoden für Listen, Strings und andere Datentypen wie folgt gesprochen haben. Nun, es stellt sich heraus, dass es dem Typ von Objekten, den wir gerade mit Klassen erstellen, sehr ähnlich dem Typ von Objekten, den wir ist. Denn wann immer wir eine neue Liste erstellen möchten, sagen wir meine Liste, führen Sie die Liste aus, geben drucken Sie dann meine Liste aus. Wir erhalten eine leere Liste, weil wir eine Instanz über den Typ oder die Klassenliste erstellt haben, eine Instanz erstellen und dann eine Instanz erstellen und dann meine Liste drucken lassen. Dann können wir auch das Verzeichnis meiner Liste abrufen, das wieder auf den Bildschirm drucken würde, und jede einzelne Methode zurückgeben würde, die wir haben. Wir haben eine Kopiermethode, wir müssen den Index der Pop-Methode, die Methode entfernen, anhängen. Wir haben bereits Methoden. Diese Arten von Listen, die wir haben, diesen Listentyp in diesem Fall, dass wir eine Instanz erstellen, wir drucken das n, da wir gesehen haben, dass es eine leere, leere Liste handelt. Aber wenn wir versuchen, die direkte Methode oder die Dir-Funktion auszuführen, sehen wir alle Methoden, die sich innerhalb dieser Instanz befinden. Nun, das Gleiche passiert für unsere Kurse. Wir können einfach Methoden in unseren Klassen erstellen , die unseren Klassen Funktionalität verleihen. Der einfachste Weg, eine Methode innerhalb der Klasse zu definieren , die wir als folgt definiert haben. Wenn wir unsere Klasse mein Haus in einer Klasse nennen würden, um ein Haus darzustellen, würden wir sie einfach als Funktion innerhalb einer Methode definieren. Meine Methode, sagen wir einfach die Grant-Methode lief. Wenn wir dann eine Instanz erstellen, sagen wir mal Nun, wir haben eine Instanz meines Hauses, meines Hauses erstellt und dann mein Haus, meine Methode, geführt. Mal sehen, was hier passiert. Es heißt, es gibt uns einen Fehler. Es heißt Typpehler. Meine Methode benötigt 0 Positionsargumente, aber eines wurde angegeben. In diesem Fall. Es stellt sich heraus, dass wir für eine Klasse und ich **** Klassenmethoden immer das Self-Argument übergeben müssen. Wenn wir das laufen lassen. Auf der anderen Seite würden wir sehen OK, Methode lief. Denken Sie daran, dass wir das Self-Argument übergeben müssen , da eine besondere Sache an Methoden darin besteht, dass das Instanzobjekt als erstes Argument der Funktion übergeben wird jedes Mal als erstes Argument der Funktion übergeben wird es läuft. Stellen Sie sich das Selbstargument einfach als die Instanz selbst vor. Also geht es in der Instanz selbst an die Funktion weiter, es ist genau so, als würde ich hier unten sagen, mein Haus entspricht meiner Methode und übergebe dann in meinem Haus eine. Wir sehen, dass die Methode Bronze wieder, weil ich mein Haus nenne, das ein Objekt ist, das eine Klasse in diesem Zustand ist, in diesem Fall. Dann rufen wir meine Methode auf, die eine Methode innerhalb dieser Klasse ist. Und dann gebe ich die Instanz weiter, die die Instanz selbst ist. Dies entspricht der Aussage wo wir das einfach nur tun wollen, weil wir dorthin gegangen sind, wir wollen es nur das Haus selbst für die Instanz selbst nennen , die Funktion selbst genannt wird, und lassen Sie dann die Instanz selbst automatisch von Python an die Funktion übergeben. Das ist der Verlust von Python und dort haben wir den Fehler vorher bekommen. Und dort hat es funktioniert, nachdem wir das Self-Argument in die Methode selbst aufgenommen hatten. Python hat auch sogenannte Magic- oder Dunder-Methoden. Donner für einen doppelten Unterstrich, das sind einfach Methoden, die eine besondere Funktionalität haben . Und jeder hat einen ganz bestimmten Zweck. Wir müssen uns nur mit Donnermethoden auseinandersetzen wenn wir ein ganz bestimmtes Ziel im Auge haben. Und wir wissen, dass wir diese Dunder-Methode verwenden wollen , um damit umzugehen. Nehmen wir dieses Beispiel für eine Sekunde. Wir haben die Klassenvariablen oder Klassenattribute verwendet , um all diese Attribute einer einzelnen Klasse zuzuweisen . Und dafür verwenden wir ein Klassenattribut. Aber was wäre, wenn wir so etwas machen wollten? Mein Haus, eins gleich meinem Haus, und dann sag Barcelona, drei bis vier Schlafzimmer und Badezimmer. Und dann würden die Fliese hier in der Liste gehen , die Böden. Dann stimmt es. Was wäre, wenn wir dies weitergeben wollten da es eher wie eine Funktion aussieht, aber es ist einfach eine Möglichkeit, eine Instanz einer Klasse mit den Attributen zu starten , die an diese übergeben werden, weil wir nicht möchten, dass alle von ihnen haben Sie Barcelona oder haben die gleiche Art von Böden. Wir möchten diese in jedem einzelnen Mal eindeutig definieren, jedes Mal, wenn wir eine Klasseninstanz deklarieren. Was glauben Sie, was wir für diese Situation tun könnten? Nun, es stellt sich heraus, dass es eine sehr spezifische Dunder-Methode gibt, die als Initialisierungsmethode bezeichnet wird . Nehmen wir an, initialisiere Instanz was diese Dunder-Methode tut oder wie das spezifische Verhalten diese Thunder-Methode hat. Die init-Methode besteht darin, dass sie jedes Mal ausgeführt wird , wenn eine neue Variable oder eine neue Klasseninstanz deklariert wird, oder wenn eine neue Instanz ausgeführt wird, würde dies ausgeführt werden. Wenn ich zum Beispiel die Klasse initialisiert habe, habe ich es hier drin gemacht, werde ich das kommentieren weil wir das noch nicht verwenden wollen. Wir wollen mein Haus sagen. Was ist, wenn wir das tun würden? Wir können sagen, Okay, Klasse initialisiert. Wir sehen, dass wir, wenn wir die Klasse initialisieren, eine Instanz einer Klasse erstellen, diese initialisiert wird. Und dann wird dieses Codon dort auf der Init-Methode der Bronze auch Konstruktormethode genannt . Konstruktor. Was wir für dieses konkrete Beispiel tun würden, damit dies funktioniert, würden wir einfach folgendes verwenden. Die folgende Syntax würde sich selbst, Selbststadt gleich , gleich der Stadt machen. Dann gib es ein. Die Stadt hier draußen. Selbstzimmer entsprechen Schlafräumen, Zimmern, Bädern, Böden und Bädern und definieren sie dann hier unten. Flores gedeihen. Dann hat sich selbst. Pool gleich hat Pool. Wenn wir dies jetzt ausführen, initialisieren wir diese Klasse und dann hätten wir jedes einzelne Attribut dieser Klasse zugewiesen, da die init-Methode sehr spezifisch funktioniert. Ein anderes Beispiel für eine andere Methode, oder wir könnten eine reguläre Methode erstellen, könnte eine Druckbeschreibungsmethode sein. Und hier ist ein Beispiel. Wir definieren die Instanz, eine Beschreibungsmethode, und dann drucken wir einfach Beschreibung von allem aus der Instanz. Wann immer wir diese Methode ausführen wollten, speichern Sie die Beschreibung meiner Hausein-Instanzen. Wir konnten sehen, wie es Stadt Epsilon und Schlafzimmer druckt, drei Badezimmer, um den Titel Hartholz-Teppichkrankenhaus gleich wahr zu zwingen . Wir können sehen, dass dies ein Beispiel für eine andere Art von Methode ist , die wir erstellen könnten. Hier sind wir gerade. Diese Funktionalität haben wir auch gesehen. Was es bedeutet, ist, dass es durch Methoden Funktionalität durch Methoden bedeutet . Und das könnten auch so genannte Magic Dunder-Methoden für doppelte Unterstriche sein. Dann haben wir diesen Zustand gesehen, so ziemlich wie eine Momentaufnahme deiner Klasse. Sie also fest, dass der Status eine Teilmenge von Daten und Attributen ist. Wenn Sie zu einem bestimmten Zeitpunkt ein Foto von Ihrer Klasse machen würden oder was wir Ihrem Objekt vorhaben , wäre dies der Zustand Ihres Objekts. Wir können hier eine Momentaufnahme Ihres Objekts sagen. Jetzt können wir also klarer sehen , dass der Absatz , der ursprünglich als Fremdsprache begann, jetzt viel sinnvoller ist. Wenn wir nach hinten gehen würden, lesen Sie zurück, habe ich es nicht getan. Im Moment würden wir Konzepte verstehen, die es hat. Das ist ziemlich beeindruckend, um Fremdsprache in etwas Verständliches zu verwandeln. Herzlichen Glückwunsch dazu. Süß. Jetzt lasst uns eine Zusammenfassung machen. Wir haben gesehen, dass wir eine Vergessskurve mit Weltraumwiederholung und aktivem Rückruf kreuzen . Unser Gehirn stärkt sich im Laufe der Zeit und wird schärfer und fokussierter in einem täglichen Leben. Mal sehen was, wo wir sind. Wir können sehen, dass wir wissen, dass unsere Klassen oder Typen von Unterobjekten den Blueprints entsprechen. Und dann sind neue Instanzen gleich den Häusern. Das Äquivalent von Blaupausen und Häusern für Klassen sind Blaupausen und Instanzen sind Einzelhäuser. Dann haben wir gesehen, dass Daten durch Attribute uns den Status durch die Momentaufnahme des Objekts geben. Dann trifft die Funktionalität durch Methoden, die nicht sowohl Magic- als auch Dunder-Methoden sein können. Dunder für doppelte Unterstrich-Methoden. Wir haben gesehen, dass Klassen über Attribute und Funktionsmethoden Daten haben . Wir können uns Attribute als Variablen vorstellen , die zu einem Objekt und Methoden gehören , als dazu gehörende Funktion. Mesh gibt dies als Funktionen zu , die zu einem Objekt gehören. Dunder-Methoden für den doppelten Unterstrich, auch magische Methoden genannt, sind Methoden mit besonderer Funktionalität und wir sollten sie nur manipulieren , wenn wir mit diesem spezifischen arbeiten wollen funktionalität. Die init-Methode ist die add dunder-Methode einer Klasse, die jedes Mal ausgeführt wird, wenn wir eine Instanz der Set-Klasse erstellen. Dann wissen wir, dass sich selbst auf eine Instanz selbst bezieht. Wir übergeben es als erstes Argument an alle Methoden innerhalb einer Klasse. Sie könnten eine andere Variable verwenden, Namen anstelle von sich selbst, aber Sie könnten jeden Namen verwenden, den Sie möchten, aber das verwenden wir für Konventionen und um Ihren Code für andere Programmierer lesbarer zu machen. Und schließlich schauen wir uns den Abschnitt „ Verstehen“ für heute an . Wir haben für Fragen für heute. Lesen Sie sie noch einmal durch, pausieren Sie das Video sofort und gehen Sie diese dann durch. Wenn Sie Hilfe benötigen, Sie Fragen im Chat stellen und die Community wird dort aktiv sein. Und wenn nicht, können Sie sich gerne melden und wir werden auch dort hindurch hilfreich sein . Viel Glück damit und wir sehen uns morgen wieder. 22. Tag 19 - OOP - Erbe: Willkommen bei Day 19, dem heutigen Ziel der Rennstrecke. Die erste besteht darin, einen weiteren Vorteil eines offenen Geistes zu untersuchen. Und die zweite besteht darin, sich mit der Klassenvererbung zu befassen. Wir werden uns ansehen, was Eltern- und Kinderklassen sind. Lassen Sie uns damit direkt in den Lernbereich springen. Wenn wir offen sind, können wir die Dinge objektiv betrachten und wo immer ein besserer Weg entsteht, etwas zu tun, werden wir es schnell übernehmen und verbessern können. Ein Aufgeschlossener Geist hindert uns bei unserem alten Weg zu bleiben, einfach weil es so war wie wir es in unserem ganzen Leben getan haben. Mit einem offenen Geist können wir uns alle Optionen ansehen und diejenige auswählen, die am besten funktioniert. Dieser Ansatz hebt Sie schnell davon ab, dass alle Menschen, die subjektive Meinungen führen , der Entscheidungsfindung im Wege stehen . Es gibt Situationen, in denen wir eine Klasse erstellen möchten , die auf einer anderen Klasse basiert . Eine Klasse erbt von einer anderen. Die höhere Klasse wird als übergeordnete Klasse bezeichnet. Derjenige, der davon erbt, heißt die untergeordnete Klasse. Schauen wir uns dieses Beispiel einer Klasse an , die wir als Elternklasse haben. Mein Elternkurs. Wir werden dokumentieren. Es wird eine Deadlock-Zeichenfolge sein. Definieren wir dann eine Init-Methode, um das Self initialisiert eine Instanz meiner übergeordneten Klasse hinzuzufügen das Self initialisiert eine Instanz . Dann werden wir sagen, dass ich mich selbst gleich bin. Wir werden diese Methode als Parameter hinzufügen. Dann sagen wir Print. Wir sagen „f string of“ und sagen, du hast gerade initialisiert, Misha, hat eine Instanz initialisiert. Mein Elternkurs. Dann werden wir sagen, sagen print c gleich hier oben. Wir brauchen das Upstream nicht wirklich hier unten. Wir argumentieren gleich dem Argument. Großartig. Jetzt fügen wir eine weitere Methode hinzu, die einfach meine übergeordnete Methode sein wird. Wir gehen in selbst durch. Einfach, wir sind nur das ist einfach eine Methode, eine Methode meiner Elternklasse. Das einzige, was wir tun werden, ist, dass wir die übergeordnete Methode ausführen werden. Deshalb werden wir jetzt tun, dass wir unsere Elternklasse haben, wir haben die innere Methode und wir haben meine Eltern-Methode. Dann definieren wir eine andere Klasse, die mein Kind sein wird. Mein Kinderunterricht. Wenn wir dann zur Vererbung wollen, wenn wir von einer anderen Klasse erben wollen, möchten wir meine Elternklasse an die Children-Klasse weitergeben. Auch hier wäre dies eine Doc-Zeichenfolge. Dann würden wir die Init-Methode definieren. Sag, wir wollen mich selbst sagen. Dann argumentieren Kinder Kinder untergeordnet. Und dann sagen wir hier unten einfach gleich Kind zu Kind. Dann drucken wir einfach etwas aus, um uns anzumelden. Du sagst, gerade initialisiert, initialisiert. Neue Instanz meiner Klasse, meine Kinderklasse. Wir werden die F-Saite mit dem damaligen Kind Lord sagen . Schließlich werden wir eine untergeordnete Methode haben. Meine untergeordnete Methode, die sich selbst annehmen wird und einfach gedruckt wird. Aber ich füge eine Doc String-Methode hinzu. Mein Kind. einfach zur gedruckten untergeordneten Methode gehen untergeordneten Methode können Sie sehen, dass ich eine Super Super-Funktion aufgerufen habe , die einfach Aufrufe ist und auf die übergeordnete Instanz verweist. Es wird also auf die übergeordnete Klasse verweisen, wird sie initialisieren, um das Argument zu übergeben. Wenn wir hier unten sehen, dass wir dieses Argument haben, würde es in die Funktion übergeben von der Elternklasse aufgerufen wird. Und das würde die Elternklasse initialisieren. Wenn wir hier andere Argumente hätten. Zum Beispiel sind R2 oder etwas, das wir mehr Argumente hatten. Wir würden diese zusätzlichen Argumente auch hier hinzufügen, R2, und dann würden wir es in R2 übergeben, wir würden einfach alles replizieren , was in der Elternklasse ist, und wir würden es an die untergeordnete Klasse übergeben als gut. Aber in diesem Fall haben wir nur ein Argument, also tun wir nur eines würde die Superfunktion aufrufen , um die Elternklasse zu verursachen. Wir initialisieren es, übergeben das Argument und führen es dann einfach aus, wie jede andere Konstruktormethode initialisiert hat. Und es ist auch etwas Dokumentation zu dieser Instanz meiner untergeordneten Klasse hinzuzufügen . Großartig. Wenn wir es jetzt tun, wenn wir mein Kind machen, sagen wir, dass mein Kind meiner Kinderklasse entspricht. Sie werden es in Argument eins weitergeben. Sagen wir Wert eins, Wert zwei. Dann sagen wir Mein Kind mein und führen dann die Methoden aus, meine untergeordnete Methode. Dann werden wir sie sehen. Mein Kind hat auch meine Eltern-Methode. Wenn wir das ausführen, werden wir sagen, okay, Sie initialisieren einfach eine Instanz meiner Elternklasse, weil sie super sind, wieder die Superfunktion namens sin, die Elternklasse und initialisiert es dann. Wenn Sie die init-Methode von der Super -, Superreferenzen, der übergeordneten Klasse aufrufen , initialisiert sie sie dann mit dem Argument , das Sie übergeben. Darum sagst du, dass wir hier drucken. Wir initialisieren einfach die Instanz meiner Elternklasse. Dann bekommst du Argumentwert eins. Und dann heißt es, dass du gerade in der Inzidenz meiner, meiner Child-Klasse initialisiert hast, bist du Argumentwert eins und Wert zwei? Dann siehst du, dass nichts anderes passiert ist, dass die Methoden nicht ausgeführt wurden. Und es spricht einfach, weil wir sie nicht richtig genannt haben. Wir müssen darauf hinweisen, dass sie durch Verwendung der runden Klammern referenziert werden. Wenn wir es auf diese Weise machen, können wir sehen, okay, untergeordnete Methode lief, die übergeordnete Methode lief. Und sie haben beide mit der untergeordneten Klasse ausgeführt, die von der Elternklasse geerbt wurde. Ein paar Beispiele , in denen wir vielleicht Vererbung verwenden möchten , können sein. Eins ist es nicht. Wenn wir zum Beispiel eine App für eine Schule erstellen wollten, haben wir eine Personenklasse. Und dann wäre die Personenklasse als übergeordnete Klasse die Elternklasse. Und dann könnten wir ein paar Kinderklassen haben, die Schüler, die Klasse und die Lehrerklasse sein können . Wir können die Person haben, die viele Attribute für eine Person haben kann , die sowohl für die Schüler als auch für die Lehrer gelten könnte . Aber dann können wir einige spezifischere Bewerbungen für die Schüler und die Lehrer getrennt haben. Das kann ein Beispiel sein. Ein anderes Beispiel kann sein, dass Sie eine Elternklasse haben können , wenn Sie versuchen, eine NOP für etwas zu tun , das mit Hunden oder Haustieren zu tun hat. Du kannst eine Elternklasse namens Hund haben. Und dann sind Kinderklassen für die verschiedenen Rassen die verschiedenen Arten von Hunden , die Sie in Zukunft verwenden. Sie können Hund gelöscht haben, wo Sie einen Ausstellungshund haben können oder einen Hund haben können, schreckt eine andere Anwendung ab, die Sie verwenden könnten. Vererbung, Vererbung, die sich als nützlich erweisen könnte. Gitter. Also lasst uns eine Zusammenfassung machen. Jetzt, wenn wir aufgeschlossen sind, können wir die objektiv besseren Optionen unabhängig von eventuellen Vorurteilen, die wir haben, annehmen die objektiv besseren Optionen . Anfangs. Wir können untergeordnete Klassen erstellen, die von übergeordneten Klassen erben, indem wir die übergeordnete Klasse in der Definition wie Blackstone hinzufügen, Syntax wie in Klasse, untergeordnete Klasse und innerhalb der runden Klammern, der übergeordneten Klasse, folgen . Klassenvererbung funktioniert, wenn wir eine Unterklasse erstellen und uns nicht wiederholen möchten , indem wir alle übertragbaren Daten und Funktionen neu schreiben müssen. Wir verwenden eine super integrierte Funktion, um auf die übergeordnete Klasse innerhalb der untergeordneten Klasse zu verweisen . Wann immer wir eine untergeordnete Klasse verwenden, die untergeordnete Klasse Vorrang vor Daten oder Funktionen, bevor Python die übergeordnete Klasse durchsucht. Und schließlich haben wir den Abschnitt „Verstehen“. Sie haben fünf Fragen für heute. Wenn Sie Fragen zu diesen haben, sich gerne in der Community stellen , weil wir aktiv sein werden. Sie sind nicht so, dass es großartig ist und dann viel Glück damit und wir sehen uns morgen wieder. 23. Lektion 20: Willkommen zu einem weiteren Ruhetag. Wow, herzlichen Glückwunsch, dass Sie es so weit in den Kurs geschafft haben, es sei denn, sie freuen sich unglaublich darauf , Sie hier zu haben, denn es bedeutet, dass Sie den schwierigsten Teil überwinden konnten , der der erste ist ein paar Tage haben Sie es geschafft, bis zu diesem Zeitpunkt konsistent zu bleiben? Es ist wie ein Zug, wenn er auf vollem Halt ist, in Bewegung zu kommen ist der schwierigste Teil. Aber dann wird es im Laufe der Zeit einfacher und einfacher, wenn Sie konsequent sind , bevor Sie es wissen, der Zug mit Höchstgeschwindigkeit fährt und der Aufwand, den Sie unternehmen müssen, darin besteht, ihn dort zu halten. Weil ein Objekt, das sich bereits in Bewegung befindet, in Bewegung bleibt es sei denn, es gibt eine Kraft, die daran arbeitet, es zu stoppen. Stellen Sie sicher, dass Sie alle Lektionen oder irgendetwas überprüfen , was hilfreich sein könnte. Und ich nehme mir eine Sekunde Zeit , um Sie an die drei Schlüssel zum effektiven Lernen für Konsistenz zu erinnern . Komm einfach jeden Tag zurück und gib ihm alles, was du hast. Herzlichen Glückwunsch, dass Sie die Trainingsbewegung gestellt haben. Jetzt ermutige ich Sie, diese Dynamik zu nutzen , die Sie tragen, und eine endgültige Strategie zu beenden und sie nach einer Wiederholung im Abstand weiter zu lernen. Aktiver Rückruf ist eine hervorragende Bringübung. Kombiniere dies mit rational Erholung und du wirst die Vergessskurve zerquetschen. Schließlich, wenn Sie Fragen oder die Antwort haben, seien Sie offen. Seien Sie neugierig und nähern Sie sich dem Lernen mit dem Verstand eines Anfängers. Es gibt immer einen neuen Weg, den wir nicht durchlaufen haben. So genial. Genieße deinen Ruhetag. Stellen Sie sicher, dass Sie alle Fragen aus früheren Tagen angehen. Und wir sehen uns morgen wieder hier. 24. Tag 21 - Dateien: Willkommen bei Tag 21, dem heutigen Ziel der Rennstrecke. Zunächst möchten wir untersuchen , wie wichtig konsequent zu sein. Das werden wir noch einmal besichtigen. Als Nächstes werden wir uns die Akten ansehen. Wir werden uns alles über Akten ansehen. Lasst uns also direkt in den Lernbereich springen. Wenn Sie immer wieder zurückkommen, stärken Sie immer wieder die Gewohnheit des Lernens und der Neuheit und machen es Ihnen leichter zu jedem Tag zurückzukehren. Wenn du hier bist. Das bedeutet, dass Sie dabei bereits großartige Arbeit geleistet haben. Also herzlichen Glückwunsch. Warum Akten? Nun, es stellt sich heraus, dass es eine großartige Möglichkeit gibt, bereits gespeicherte Daten zu verwenden oder neue Daten zu speichern, die von Ihrem Programm erstellt wurden. Um eine Datei zu öffnen, verwenden wir die Funktion open. Und die Funktion open gibt ein Dateiobjekt zurück. Also erstellen wir eine Variable namens file. Und wir werden es in dem übergeben, was aus der Datei zurückgegeben wird , der Open-Funktion. Die Funktion open erhält den Dateinamen, zum Beispiel Dateiname Punkt TXT. Dies würde ein relativer Dateipfad genannt werden da davon ausgegangen wird , dass sich die Datei bereits im selben Ordner befindet, in dem wir uns gerade befinden. Aber ein absoluter Dateipfad wäre in etwa so. Dies wäre ein Beispiel für einen absoluten Dateipfad. Übergeben Sie es in jeden einzelnen Ordner aus dem Stammverzeichnis? Dies ist ein Beispiel dafür, was ein Mac OS-System verwenden würde. Und wenn Sie Windows hätten, würden Sie einen C-Doppelpunkt hinzufügen , bevor die Punkte den Dateipfad geben würden. Aber hier drin sind wir nur, wir werden nur relative Dateipfade verwenden. In diesem Beispiel haben wir bereits eine Datei erstellt, die eine Textdatei erstellt hat, die besagt Dies ist die erste Zeile, die zweite Zeile und schließlich linke dritte Zeile TXT-Datei, und sie ist bereits in der gleiche Ordner, in dem ich mich gerade befinde. Es heißt sample.txt. Und da es sich nicht um einen nachhaltigen Ordner handelt, könnten wir einen relativen Dateipfad verwenden. Also könnte ich Beispiel TXT sagen. Dies würde diese Datei in dieses Dateiobjekt öffnen. Das erste, was wir über Dateiobjekte wissen müssen , ist, dass sie die sogenannte aktuelle Position haben. Und um zu sehen, was die aktuelle Position ist, machen wir einfach ein Dateiobjekt oder dieses Dateiobjekt und führen dann die Tail-Funktion aus, die Tail-Methode für dieses Objekt. Und wir können feststellen, dass es an der aktuellen Position 0 liegt, weil es an der dritten aktuellen Position der Nullen beginnt. Das bedeutet, dass die aktuelle Position derzeit hier ist. Ganz am Anfang der Akte. Es gibt eine andere Methode namens Lesemethode. Und diese Methode gibt etwas zurück , das wir auf den Bildschirm drucken möchten. Wenn wir ein Dateiobjekt machen, lesen Sie, diese Methode, wo es tun wird, wird sie an der aktuellen Position beginnen, was wir jetzt anhand der Neigungserzählungsmethode erkennen können . Es ist nur 0 Position wird an der aktuellen Position beginnen und es wird bis zum Ende gehen. Wenn wir hier kein anderes Zeichen angeben, wenn wir dem Dateiobjekt sagen, es zu lesen , beginnt es bei 0 und es endet am Ende der Datei. Wir können also sehen, dass es eine erste Zeile, zweite Zeile und schließlich die dritte Zeile gibt. Dies ist genau das Gleiche, was wir aus unserer Textdatei erhalten , die wir zuvor erstellt haben. Wenn wir jetzt das Dateiobjekt Duck Tail Methode sagen würden , könnten wir sehen, dass sie an Position 58, V0 liegt, sagen $1 von 0 bis zum Ende, was sich als 58 positioniert herausstellte. Wie gehen wir wieder zur ersten Position? Nun, wie ändern wir die Position, die bis zum Anfang oder an einen anderen Ort innerhalb der Datei zurückgeht . Nun, dafür gibt es eine andere Methode, die Seek-Methode genannt wird. Wenn wir 0 suchen, gehen wir wieder zur Position 0 zurück, ganz am Anfang der Datei. Denn wenn wir die Datei zum Beispiel lesen würden, können wir sie kostenlos lesen und dann versuchen, sie erneut zu lesen. Jedes Mal, wenn es es hier liest und las, ging es bis zum Ende. Die aktuelle Position ging bis auf 58. Deshalb hat es, wenn ich das Dateiobjekt erneut lesen lasse, nichts ausgegeben, da sie zuerst die Seek-Methode ausführen müssen die Seek-Methode ausführen , um die aktuelle Position bis zurück auf 0 zu bringen. Und dann kann ich es von Anfang an noch einmal lesen. Immer wenn wir ein Dateiobjekt in Python öffnen, können wir sehen, dass es das Dateiobjekt hat, das Attribut ist gleich false geschlossen. Wenn Sie sich also das Dateiobjekt ansehen, ist Closed momentan gleich false. Und wir könnten die Close-Funktion oder das close, das close Method-Dateiobjekt, in der Nähe verwenden , um die Datei zu schließen. Auf diese Weise können wir, wenn wir die Close-Datei ausführen, sehen wir, dass es gleich wahr ist, und wir möchten unsere Dateien schließen, nachdem wir sie verwendet haben. Danach sind wir damit fertig, sie zu benutzen. Um die Speichernutzung von unserem Skript zu reduzieren. Es gibt nicht noch einfachere Möglichkeit Dateien in Python zu verwenden, nämlich die Breite, die Width-Anweisung oder den Breite-Block. In diesem Fall verwenden wir mit open. Und dann führe den Dateinamen aus , der in diesem Fall Beispiel Sperren dxdy ist. Als Dateiobjekt. Dann führen wir hier die Funktionen aus oder wir führen den Code , für den wir unsere Dateidatei verwenden möchten. In diesem Beispiel verwenden wir eine for-loop-Linie. In File-Objekt. Wir drucken die Zeile aus. Wir werden sehen, dass es jede einzelne Zeile im Dateiobjekt druckt . Da die Datei hier bereits neue Zeilen enthielt, ich immer füge ich immer eine neue Zeile hinzu, ein neues Zeichen, da sie bereits eine neue Zeile hat. Und die Druckfunktion jedes Mal, wenn sie ausgeführt wird, fügt sie auch eine neue Zeile hinzu. Deshalb werden zwei neue Zeilen gleichzeitig hinzugefügt. Um das zu entfernen, können wir die Strip-Methode verwenden. Und so erhalten wir die Datei ohne die zusätzlichen Zeilenumbrüche. Das Gute an der width-Anweisung ist, dass jedes Mal, wenn Sie einen Breitenblock verwenden, jedes Mal, wenn der Breitenblock beendet oder endet, die Datei automatisch schließt. Es öffnet die Datei als Dateiobjekt. Dann können Sie das File-Objekt verwenden. Sie können eine for-Schleife verwenden, um jede einzelne Zeile im Dateiobjekt zu durchlaufen. Sie können jede Zeile drucken. Und wenn dieser Codeblock die Datei beendet hat, werden wir uns automatisch nähern, wir uns automatisch nähern ohne dass wir dies explizit angeben müssen. stellt sich heraus, dass wir die Open-Funktion sowohl im Dateipfad als auch im Modus übergeben können Es stellt sich heraus, dass wir die Open-Funktion sowohl im Dateipfad als auch im Modus übergeben können. Bisher haben wir den Modus noch nicht bestanden, da er die R verwendet hat einen Standardwert. R dient zum Lesen einer Datei zum Lesen nur zum Lesen. Bisher haben wir implizit erklärt, dass wir die Datei zum Lesen öffnen. Aber es gibt andere Arten von Modi, die wir hinzufügen könnten, und wir könnten z. B. verwenden , um eine Datei nur zum Schreiben zu öffnen, und dies löscht die Datei, wenn sie bereits existiert, oder eine damit erstellen benennen. Wenn es noch nicht existiert, ist das x vier für die exklusive Erstellung geöffnet, fehlschlägt, wenn die Datei bereits existiert, dann ist ein zum Schreiben geöffnet hängt das Ende der Datei an. Also ist ein zum Anhängen. B ist für den binären Modus verwendet diesen beim Lesen und Schreiben. Und T ist für den Textmodus , der standardmäßig den im Lesemodus verwendet . Also B und T, T ist die Standardeinstellung und B wäre, würde nicht, wir würden es nicht zu hell für eine Binärdatei, eine Binärdatei wollen . Dann ist Plus zum Öffnen zum Aktualisieren, Lesen und Schreiben. Einige Beispiele sind Plus, was bedeuten würde, eine Datei sowohl zum Lesen als auch zum Schreiben zu öffnen , ohne zuerst zu kürzen. Und dann w1 plus welche die Datei sowohl zum Lesen als auch zum Schreiben öffnen . Die Datei zuerst abschneiden. Um die Datei zum Lesen im Binärmodus zu öffnen , können wir RB verwenden, das gelesen und dann binär ist, um an eine Binärdatei anzuhängen, die AB verwendet wird. Textdateien enthalten Strings Datei Binärdateien enthalten eine Reihe von Bytes. Auf andere Weise gesagt, die Textdateien sind menschenlesbar und Binärdateien nicht. Ein Beispiel für Binärdateien sind Bilder, Videos und Komprimierungsdateien. Und schließlich könnten wir das modus-Datei-Objektattribut verwenden , um den Modus zu erhalten, in dem die Datei geöffnet war. Als Beispiel dafür, wie wir eine neue Datei erstellen würden, könnten wir so etwas wie dieses Beispiel machen, dot TXT. Dann sagen wir richtig als Dateiobjekt. Dann können wir hier drin das Dateiobjekt, object, right, Methode verwenden , um neuen Text zu schreiben. In diesem Fall, was passiert , wenn ich zu meiner Datei zurückkehre, war dies meine Textdatei. Immer wenn ich zu dieser Beispiel-Punkt-TXT-Datei zurückkehre, würde dies alles nicht enthalten. Wenn ich zurückgehe und versuche , diese Datei zu öffnen. Dies ist die Akte, die ich bekommen würde, wenn ich sie wiederfinden würde und versuchen würde, diese Datei zu öffnen. Denn das, was es tut, ist, dass es die Datei zuerst abschneidet und dann darauf schreibt. Und die Schreibmethode wird verwendet, um genug zu schreiben, um es an das Ende der Datei anzuhängen. Bei der direkten Methode gibt es bestimmte Dinge, die Sie vielleicht berücksichtigen möchten. Beispielsweise geben die Träger die neue Zeile oder die Zeilenendungszeichen für die Texte zurück, die Sie anhängen werden. Da es vom Ende der Zeile abhängt, können Sie diese Zeichen für jedes Zeichen verwenden, um können Sie diese Zeichen für jedes Zeichen verwenden die neue Zeile in Zeilenenden sowohl für Windows als auch für die Einheiten für Mac-Betriebssysteme zurückzugeben die neue Zeile in Zeilenenden sowohl für Windows als auch für . Süß, also lasst uns jetzt eine Zusammenfassung machen. Dateien sind eine großartige Möglichkeit, Daten außerhalb der aktuellen Ausführung Ihres Programms zu speichern . Die integrierte Funktion öffnen akzeptiert einen Dateipfad , der relative oder absolute Pfade sein kann, und gibt ein Dateiobjekt zurück. Sie können die Open-Funktion verwenden und dann Objektmethoden wie Lesen, Erzählen, Suchen und Schließen von Methoden verwenden. Die bequemere Art, mit Dateien zu arbeiten , ist jedoch die width-Anweisung, die breite open file.txt als Dateiobjektanweisung verwendet, hat den Vorteil, dass die Datei automatisch ist geschlossen, nachdem der Block oder der Codeblock ausgeführt wurde, auch wenn ein Fehler beim Drucken aller Zeilen in der Datei auftritt , die Sie für die Zeile im Dateiobjekt und innerhalb des Breitenblocks verwenden können für die Zeile im Dateiobjekt und innerhalb des Breitenblocks verwenden , und dann drucken jeder innerhalb der for-Schleife. Dann gibt es verschiedene, verschiedene Modi. Sie können die Funktion nicht erneut öffnen. Der Standardwert ist RT , nämlich Lesen und Text. Und eine gemeinsame, die Sie als r Pluss verwenden können, der einen Dateimodus öffnet. Im Textmodus sowohl zum Aktualisieren als auch zum Lesen. Ein Gleichtaktmodus kann R plus sein , der im Textmodus zum Aktualisieren, Lesen und Schreiben geöffnet wird. Und schließlich ein Satz auf den Abschnitt „Verstehen“. Heute haben wir drei Fragen , die mit dem Umgang mit Dateien zu tun haben. Also viel Glück damit und lass uns wissen, wenn du Fragen im Community-Bereich hast, wird es dort aktiv sein. Wenn nicht, viel Glück damit und wir sehen uns morgen. 25. Tag 22 - Ausnahmebehandlung: Willkommen zurück zum 22. Tag. Gut. Die heutigen Ziele haben wir Fehler und Ausnahmen beim Umgang mit Ausnahmen. Es geht heute um Ausnahmen. Springen wir direkt in den Lernbereich. Es gibt mindestens zwei Arten von Fehlern. Wir haben Syntaxfehler und dann haben wir Ausnahmen. Wenn wir diesen Code ausführen würden, würden wir sehen, dass wir einen Syntaxfehler erhalten würden, eine ungültige Syntax, da diese Syntax nicht gültig ist. Das wäre also die erste Art von Fehler. Und wenn wir dann versuchen, so etwas auszuführen, wie eine 0-Division, würden wir einen 0 Divisionsfehler bekommen und das wäre eine Ausnahme. Wenn wir den folgenden Code ausführen würden, würden wir einen Namensfehler erhalten, da Pam eine undefinierte Variable ist, die nicht definiert ist. Wenn wir dann versuchen würden, eine Zeichenfolge als Ganzzahl hinzuzufügen , würden wir einen Typfehler erhalten, der Strings nur mit Strings verketten kann . Wir würden einen Typfehler bekommen, der eine andere Art von Ausnahme ist. Wir können hier sehen, wie Ausnahmen in verschiedenen Typen auftreten können. Also, die Beispiele, die wir zuvor gezeigt haben, sind ZeroDivisionError, Namensfehler und Typpaar, wir können einen Versuch und außer Block verwenden , um mögliche Ausnahmen zu behandeln , die auftreten können. Dies bedeutet, dass es versucht, den Codeblock unter der try-Anweisung auszuführen. Und wenn eine Ausnahme ausgelöst wird, wird der Try-Block nicht mehr ausgeführt und überprüft den außer Block. Wenn die ausgelöste Ausnahme mit einer der Ausnahmen im außer Block übereinstimmt , wird dieser Block ausgeführt. Was heißt das? Wir haben einen Versuch und außer Block. Schauen wir uns ein Beispiel für einen tatsächlichen Anwendungsfall an. Wir haben hier eine While-Schleife, obwohl es stimmt. Das wird also unendlich weitergehen, wenn bei dieser Pause nichts bei dieser Pause passiert, wo wir das versuchen werden, wir werden versuchen UserInput. Und wir werden den Benutzer bitten, bitte eine Nummer einzugeben. Und dann sagen wir Nummer. Wir werden das in eine Ganzzahl umwandeln. Und dann werden wir brechen, außer wenn wir einen Wertfehler bekommen. Wenn wir irgendwo um diesen Testblock herum einen Wertefehler erhalten, wird dieser außer Block ausgeführt und dann würden wir auf dem Bildschirm eine ungültige Nummer drucken. Bitte versuchen Sie es noch einmal. Wann würden wir einen Wertefehler bekommen? Nun, wann immer wir etwas bekommen , wie wenn wir einen Buchstaben als Eingabe würden, würden wir immer dann einen Wertefehler oder ähnliches bekommen. Versuchen wir, dies als Beispiel auszuführen. Bitte gib eine Zahl ein. Wenn ich also W gemacht habe, wird es mir eine ungültige Nummer sagen. Bitte versuchen Sie es erneut und sehen Sie, wie die while, die While-Schleife, wieder läuft. Da wir mit der Ausnahme umgehen und dann die Where gleich true ist und dann der Codeblock wieder läuft, bis ich es erneut versuche, bekomme ich immer wieder etwas mit der gleichen Iteration derselben Iteration bis ich geben Sie eine gültige Zahl ein, z. B. drei. Und das würde bedeuten, dass der Code erfolgreich ausgeführt wird. Es wird kaputt gehen, es wird aus der While-Schleife herauskommen und der Code wird erfolgreich ausgeführt. Wenn wir wollten, könnten wir weitere Typen hinzufügen die vom außer Block gefangen werden sollen. Wir würden dies mit der Tupel-Notation hinzufügen. Zum Beispiel würde hier alles, was als Wertfehler, ein Typfehler oder ein Neymar ausgelöst würde, von diesem abgefangen außer Block, und dann würde dieser Code danach laufen. So würden wir verschiedene oder mehrere Arten von Ausnahmen eingeben , Ausnahmen, die kopiert werden sollen, außer Block. Es gibt eine andere Möglichkeit, den außer Block zu benutzen. Und auf diese Weise, ohne irgendetwas oder irgendetwas einzugeben, irgendeine Art von Ausnahme, würde dies als Platzhalter funktionieren und dies würde jede einzelne Art von Ausnahme erfassen , die durch diesen Versuch ausgelöst werden sollte. Dies wird nicht unbedingt empfohlen denn wenn eine unvorhergesehene Ausnahme, wo wir hier hingefahren sind, würde sie von diesem außer Block erfasst werden. Und wenn dies der Fall wäre, würde der Code, der damit umgehen soll, auch wenn wir diese Ausnahme nicht erwarten würden . Die Verwendung eines Platzhalters wird nicht empfohlen. Die Verwendung eines einzelnen, eines einzelnen Wertes oder eines einzelnen Ausnahmetyps ist der Anwendungsfall. Ich werde am häufigsten sehen , weil wir versuchen werden, eine einzige Art von Fehler vorherzusagen , und wir werden in der Ausnahme eine einzige Art von Fehler behandeln . Ausnahmen bestehen nicht nur alle Ausnahmen, wenn sie angesprochen haben oder sofort auftreten. Und der Try-Block, wenn wir hier auf unsere Funktion verweisen würden, würde diese Annahme immer noch aufwerfen, dann würde das aufgerufen werden, die auch durch die Ausnahme gehandhabt würde. Wenn wir dies zum Beispiel als Funktion hätten, geben Sie einfach int des Arguments zurück, dann würden wir hier drin num gleich num gleich turn in function verwenden . Dann Benutzereingabe. Wenn wir dies ausführen und dann sagen würden , dass eine Nummer involviert bleiben würde, versuchen Sie es bitte erneut, bis wir eine Nummer eingegeben haben und sie dann erfolgreich laufen würde. Aber hier soll man sehen, dass, wenn Sie eine Funktionsreferenz hatten, irgendwo anders bei der Fehler in der Funktion statt im eigentlichen Code direkt aufgetreten ist . Die Luft, da sie im selben Codeblock stattfand, würde sie angehoben und weniger erwartet behandelt werden. Sie können Ihre eigenen Ausnahmen definieren, indem von der Basisausnahmeklasse erben. Hier erstellen wir unsere eigene Klasse oder eigene Ausnahme, die Air genannt wird. Und es erbt von der Basisausnahme von hier. Wir haben also die Ausnahme inhärent , die die Elternklasse wäre, und dies wäre eine untergeordnete Klasse. Und in diesem Fall wäre es eine Ausnahme. Die meisten sind mit Namen definiert, die einen Fehler beenden. Das ist Konvention. Sie können auch mehrere Ausnahmen verketten. Wenn ich also ein paar Fehler machen würde, würde dieser von dieser Luft erben , von den Eltern dort. Und ich sage „Unterricht“. Zweitens. Dieser würde vom ersten Fehler erben. Sie können also sehen, wie es gibt, hier passiert so wie ein Erbbaum . Jetzt würde ich sagen, dass ich für den Unterricht einen Fehler sagen werde. Erstens, ihr zweiter dort. Willst du es versuchen. Ich möchte versuchen , die Raise-Aussage zu verwenden. Führen Sie in jeder Klasse ein Rennen aus. Außer, außer dem Sekundär. Druck. Zweitens. Die meisten außer du kannst außer Blöcken verketten. Zuerst werden sie Print sagen. Zuerst. Akzeptiere schließlich Luft. Und ich sage „Print“. Was passiert, wenn ich das durchführe? Wir würden OK Fehler bekommen, dann zuerst und dann Sekunde. Denn für den ersten Fehler, den ersten, konnten wir das sehen, wenn es versucht, wenn es die Luft umarmt. So geht es von vier Klassen in eng, es beginnt dort drin, der Try-Block und rassistisch de air. Dann folgt es jedem außer Block. Wenn es außer sekundär geht, fällt es nicht in die Sekundarstufe. Und wenn false dem nächsten außer Fehler folgt, dann fällt es der nächste außer Block. Und es heißt, wenn dies den ersten Bereich betrifft, da dies nicht der Fall ist, fällt es außer Block durch den dritten Platz und dann druckt es schließlich die Luft, weil sie durch diesen endgültigen Fehler fällt außer Block. Dann ist der erste Hop derselbe, der gleiche. Der erste wird zuerst fallen und dann folgt ihm der zweite zum zweiten. Aber wenn die außer Blöcke zum Beispiel umgekehrt wären, wenn dieser hier drin gewesen wäre , wäre dieser hier drin gewesen. Wir würden jedes Mal die Luftzeit bekommen, eine Ära, weil jeder einzelne Fehler seit den Fehlern in die Luftklasse fällt . Und alle Klassen erben von derselben Basisausnahme vom selben Root-Fehler. Deshalb kriegen wir Luft, Luft, Luft. Wir drucken jedes Mal das erste Mal außer Block. Das passiert, wie wir im vorherigen Beispiel gesehen haben, die Race-Anweisung ermöglicht es dem Programmierer , eine Art von Ausnahme zu fahren Das einzige Argument-Rennen zeigt die auszulösende Ausnahme an, und dies möglicherweise entweder eine Ausnahmeinstanz, werfen Sie eine Exception-Klasse aus. Eine Exception-Klasse ist eine Klasse, die von der Ausnahme ableitet , der Basisausnahme, wie wir hier gesehen haben, wenn eine Ausnahmeklassen implizit instanziiert wurde, indem sie ihre aufrufen Konstruktor ohne Argumente. Dies bedeutet also, dass diese Fehlerklasse beispielsweise bestanden wurde. Es würde diese Luftklasse zunächst instanziieren. Und wenn wir unseren Konstruktor in dieser Klasse mit einem Konstruktor in dieser Klasse hätten , würde dieser Konstruktor laufen, weil er instanziiert würde. Rückblickend auf dieses vorherige Beispiel wollten wir uns auch ansehen, was die L-Aussage lautet. Wirklich einfach, es ist wirklich Deal Aussage passiert einfach , wenn der Try-Block erfolgreich läuft. Wenn wir zum Beispiel diesen Break-Teil hinzufügen wollten, könnten wir ihn zur else-Anweisung hinzufügen. Wir könnten Erfolg und Erfolg auch drucken. Auf diese Weise können wir sicherstellen , dass wir Linien isolieren. Auf diese Weise isolieren wir diese beiden Zeilen, zwei für den Try-Block, und wir schließen den Druck und die Break-Anweisung nicht in den Try-Block ein. Dies ist eine gute Möglichkeit, die Ausnahmebehandlung auf ein paar weniger Zeilen zu isolieren . Anstatt sich generell an etwas zu halten, das vielleicht nicht das ist , was wir anstreben. In diesem Fall würde, wenn wir diesen Code ausführen, das gleiche Verhalten wie der andere Code erhalten. Wir versuchen Buchstaben einzugeben, es funktioniert nicht. Zahlen würden uns lassen. Es funktioniert erst, wenn wir eine tatsächliche Zahl angegeben haben. Und dann heißt es Erfolg, der Code läuft. Genial, also haben wir jetzt dort aufbewahrt. Es gibt zwei Arten von Fehlern, Syntaxfehlern und Ausnahmen. Ausnahmen gibt es in verschiedenen Typen. Einige gebräuchliche sind ZeroDivisionError Neymar und geben Sie dort ein. Wir können die Python-Dokumentation sehen , damit es eine vollständige Liste ist. Wir können einen Versuch und außer Block verwenden, um Ausnahmen zu behandeln. Python, wir versuchen, den Codeblock innerhalb der try-Anweisung auszuführen . Und wenn eine Ausnahme ausgelöst wird, können Sie die außer Anweisung überprüfen und diesen Code ausführen, wenn es eine Übereinstimmung gibt. Wie alles andere in Python sind Ausnahmen einfach Objekte einer bestimmten Klasse. Sie sind alle eine Unterklasse der integrierten Basisausnahme-Klasse. Wenn Sie Ihre eigene Ausnahme erstellen möchten, einfach eine kreative Klasse, die von einer Ausnahme erbt, die bereits von der Basisausnahme erbt. Und durch Konventionsausnahmen und irrtümlich. Die Race-Anweisung kann verwendet werden , um explizit eine Ausnahme auszulösen. Schauen wir uns schließlich den Abschnitt „ Verstehen“ an. Wir haben fünf Fragen für heute. Denken Sie daran, dass dies der Fall ist, dieser Abschnitt ist so ziemlich der wichtigste Abschnitt, da wir dort tatsächlich erfahren was wir im Lernbereich sehen , wenn wir ergreifen Maßnahmen und stellen diese Fragen tatsächlich. Also viel Glück damit. Und wenn Sie Fragen haben, diese gerne im Community-Bereich im Chat veröffentlichen , und wir sind dort aktiv. Aber so oder so, wir sehen uns morgen wieder. 26. Tag 23 - Module und Python Standardbibliothek: Willkommen bei Tag 23. Und schauen wir uns die heutigen Ziele an. Zuerst werden wir damit beginnen, einschränkende Überzeugungen zu brechen. Dann suchen wir nach Modulen, der Python-Standardbibliothek, Apologen wie Comics Python. Und dann schauen Sie sich hauptsächlich an , das Rad nicht neu zu erfinden. Springen wir direkt in den Lernbereich. Ich möchte eine Sekunde Zeit nehmen , um Sie wissen zu lassen, dass Sie jetzt programmieren, heute ist die letzte Lektion aktueller Konzepte. Und danach sind Sie bereit, ein Projekt zu geben und das zu verwenden, um die Punkte dessen, was wir bisher gelernt haben, zu verbinden . Glückwunsch, dass du so weit gekommen bist. Ich bewundere wirklich das Engagement , zurückzukommen und an diesen Punkt zu kommen. Wenn du früher an dich gedacht hast, kann ich nicht lernen, wie man kodiert. Das war eine deiner einschränkenden Überzeugungen. Dann hast du dich offiziell bewiesen, ich finde es sehr aufregend, uns falsch zu beweisen , wenn es darum geht, Überzeugungen einzuschränken. Die Frage beginnt sich also zu verwandeln, welche anderen einschränkenden Überzeugungen willst du als nächstes brechen? Lassen Sie uns vorerst in unsere letzte konzeptionelle Lektion , in der wir über Module sprechen. Module ist einfach eine Datei, die Python-Objekte von Variablen bis hin zu Klassen und Funktionen enthält Python-Objekte . Sie können ein bestimmtes Modul in Ihr Python-Skript importieren und dann alles in diesem Modul in Ihrem Skript verwenden , ohne Code neu schreiben oder das Rad neu erfinden zu müssen . Schauen wir uns zunächst an, wie wir unsere eigenen main.py Datei-Sass-Module importieren können. Schauen wir uns dieses Beispiel an. Wir haben diesen Kratzer, um nicht zu pi, und dann haben wir eine Funktion. Und wir haben hier eine zufällige Klasse. Und dann haben wir einen Code , der Bronze ist, wenn ein Skript ausgeführt wird, und anstatt Scratch Dot Py auszuführen. Wenn wir also diesen Code ausführen würden würde Pi verkratzt werden. Und dann wäre das der gesamte Code. Es stellt sich heraus, dass wir den Inhalt dieser Datei in die Objekte aus dieser Datei in eine separate Datei importieren können den Inhalt dieser Datei in die Objekte aus dieser Datei in eine separate Datei , indem wir die Eingabeanweisung verwenden, einfach den anderen Namen einer Datei aufrufen. Wenn es sich im selben Ordner befindet, können wir Scratch zwei importieren. Und jetzt können wir den Inhalt von Scratch einfach aufrufen, um zum Beispiel noch zu funktionieren. Wir könnten das nennen und dann zum Beispiel Scratch zwei bei T2 drucken. Und dann werden wir zwei zur Nummer fünf hinzufügen, weil wir sehen können, dass die U2-Funktion einfach das Argument plus zwei zurückgibt. Wir sagten, wir drucken das Element, das von diesem zurückgegeben wird , mit zwei Funktionen, die aus dieser importierten importierten Importdatei aufgerufen werden. Mal sehen, was hier passiert. Wenn wir das laufen lassen. Wir sehen Scratch to Dot Py laufen und wir sehen die Nummer Sieben. Also haben wir im Grunde genommen nur eine Nummer sieben erwartet nur eine Nummer sieben denn wenn wir nur diesen Code ausführen, diesen Absturz zwei, erwarten wir nur die Nummer sieben herauskommt. Warum ist dieser laufende Scratch Dot t2 oder Scratch to Dot Py aufgetaucht, wenn wir diesen Code ausführen, nur diesen Code. Die Sache ist, dass wenn wir eine Datei importieren, diese Datei tatsächlich ausgeführt wird. Diese Datei würde tatsächlich dort ausgeführt, wo sie importiert wird. Deshalb ist es Marke und es druckte Sprint. Also hat es diesen Satz gedruckt, den wir der Scratch-to-Punkt-Py-Datei hatten. Wie gehen wir damit um? Es stellt sich heraus, dass es auf Konvention eine Möglichkeit gibt, damit umzugehen und es auszugeben. Und dann werde ich erklären, wie es funktioniert, aber es ist so ziemlich wie folgt. Wenn also der Name dem Haupt entspricht, dann möchten wir main ausführen. Die Hauptfunktion. Haupt. Er wird dem Code entsprechen , den wir in dieser Datei ausführen. Was heißt das? Wir erstellen im Grunde eine zusätzliche Funktion die als Hauptfunktion bezeichnet wird. Und wir fügen den Hauptinhalt der Datei hinzu. Dann sagen wir, wenn der Name gleich main ist, dann führe main aus. Wie heißt dieser Name, Namenssache? Was ist es? Es stellt sich heraus , dass es ein Attribut der Datei selbst ist, wann immer. Und das ist nur einer von denen, ein Beispiel. Ich führe diese Datei aus und drucke den Drucknamen aus. Wenn wir es ausführen, sehen wir okay drucken Sie den Namen, wir sehen, dass es das Wichtigste ist. Der Name ist also gleich main, deshalb druckt er den Namen Sprints main und führt dann die Gehörlose aus, die Domain-Funktion auch. Es stellt sich jedoch heraus , dass wir, wenn wir die Funktion aus einer separaten Datei ausführen , in diesem Beispiel, wenn Sie von hier aus einholen, wenn wir Scratch D2 ausführen, sehen wir, dass wir die Funktion nicht erhalten auf dem Bildschirm gedruckt, aber stattdessen werden wir abgekratzt, um es auf den Bildschirm zu drucken , weil diese Druckanweisung genau das getan hat. Diese Druckanweisung kostet für den Druck dieses Scratchdot t2, da das Name-Attribut anders ist, wenn wir dieses Skript direkt ausführen oder wenn wir es von einer Eingabeanweisung ausführen. Also, wenn ich diese Aussage von hier entferne. Und ich überlasse diese Aussage als Def-Hauptfunktion. Und wenn der Hauptname gleich main ist, run main, dann sehen wir jedes Mal, wenn ich das ausführe, das erwartete Ergebnis, das nur die Nummer sieben ist. Aber nur um die Konvention auf dem neuesten Stand zu halten und sicherzustellen, dass wir die Konvention dessen einhalten, was wir leiten. Wir werden den Namen hier wieder gleich main ausführen , weil wir dann auch main ausführen wollen. Dann werden wir hier oben main definieren. Und was wir tun werden, das eigentliche Skript, das wir hier ausführen wollen. Okay, also wenn ich das speichere und es ausführe, läuft es erfolgreich, denn wenn ich es direkt ausführe, wenn der Name gleich main ist und dann die Hauptfunktion ausgeführt wird. Und dann wird das importierte Skript aufgerufen, das auch zerkratzt ist. Aber es wird nicht den Hauptcode von Scratch ausführen , weil wir ihn in die richtige Konvention eingeschlossen haben. Werfen wir einen Blick auf die Python-Standardbibliothek. Python-Standardbibliothek. Also eine Bibliothek von Modulen, die mit Python-Installation geliefert werden. Die Bibliothek verfügt über Module mit sehr hilfreichem Code. Zum Beispiel gibt es ein Modul zum Analysieren von CSV-Dateien, zum Protokollieren für uns URL-Anfragen JSON-Parsen in vielen anderen anderen. Beginnen wir mit einem Beispiel für ein Modul namens time. Sobald wir das Modul importiert haben, haben wir durch diesen Import alles zur Verfügung . Wir können durch diese Abkürzung automatisch sehen , dass wir eine Reihe von Dingen bekommen, die es uns erleichtern. Schauen wir uns das Beispiel der Sleep-Funktion an. Wir werden es in Nummer drei weitergeben. Dann haben wir ein Druckheu und drucken dann dort. Dann führen wir das durch. Wir werden sehen, dass es druckt, hey, es wartet drei Sekunden und sie drucken die Sleep-Funktion als Beispielfunktion, die wir das Zeitmodul importieren und dann die Sleep-Funktion verwenden habe einen Code drei Sekunden lang oder wie viele wir in die Funktion eingeben. Und dann ist ein anderes Beispiel eine lokale Zeitfunktion, die beim Ausführen, wenn wir drucken, was wir davon zurückbekommen, wenn wir sie ausführen, einige Informationen über die Ortszeit erhalten wenn wir drucken, was wir davon zurückbekommen, wenn wir sie ausführen, einige Informationen über die Ortszeit erhalten Beispiel im Jahr 2021. Und dann bekommen wir ein paar weitere Informationen über die Zeit vor Ort. Diese Anweisung, die Importzeit, würde das gesamte Modul importieren. Um eine bestimmte Funktion aus dem Modul zu importieren, haben wir zum Beispiel aus dem Zeit-Import-Sleep verwendet . Dann hier drin besteht der Vorteil dieses eingebenden Snip darin, dass wir hier drin nicht die Zeitspezifikation hinzufügen müssten. Wir könnten also einfach sofort schlafen sagen , weil wir es uns zur Verfügung haben. Wenn wir das jetzt ausführen, werden wir sehen, was wir einen Fehler bekommen. Wir bekommen eine Zeit, die nicht definiert ist , weil die Zeit nicht definiert ist. Also müssten wir die Zeit von hier entfernen, aber dann ist auch die Ortszeit nicht definiert. Wenn wir auch Ortszeit importieren würden, mehrere verschiedene Funktionen, die wir verwenden könnten , wie diese durch ein Komma getrennt. Jetzt würden wir das gleiche Ergebnis wie zuvor erzielen. Ein anderes Beispiel aus einem Modul ist das Zufallsmodul. Und dann werden wir verwenden, was nicht von nanomolar stammt, wäre Import zufällig. Und dann können wir auch Alia-Sets für das machen, was wir importieren. Wir können Input random als Rand sagen, wenn wir wollten. Jetzt haben wir diese zufällige Kurzschrift. Anstatt zufällig angeben zu müssen. Zum Beispiel können wir meine Liste durch ein Beispiel haben und a, B, C sagen und dann gibt es eine Funktion im Zufallsmodul , die Shuffle genannt wird. Also könnten wir zufällig oder Rand Shuffle machen und es dann in meiner Liste weitergeben. Und dann drucken wir meine Liste aus und sehen, was wir bekommen. Wir kriegen eine CDB. Die Shuffle-Funktion aus dem Zufallsmodul mischt alle Elemente in der Variablen, an der wir sie übergeben. In diesem Fall geben wir es in einer Liste weiter. Wenn es diese Liste aufnimmt, mischt die Elemente und dann ändert es sich oder aktualisiert diese, aber die neuen gemischten Elemente. Es ist also HTTP statt ABC. Wir könnten das LES auch auf folgende Weise verwenden , die wir von Random Import, Import, Shuffle tun könnten . Das ist ein Schuss. Dann haben wir hier drin keinen Zufall definiert. Wir haben nicht einmal scharf, das Shuffle definiert. Wir werden scharf definiert verwenden. Und dann lass das nochmal laufen und schau, was wir kriegen. Wir bekommen a, b, c weil sich herausstellte, dass es sich um eine zufällige Ausgabe handelte, aber dann bekommen wir eine CB, dann BCA, Sie können sehen, wie wir die Liste mischen, die wir im Meeting bestanden haben. Es gibt eine andere Möglichkeit , alles aus der Zufallsdatei zu importieren . Wir können aus Random Import sagen , alles importieren, was ein Stern von allen zufällig wichtig ist . Und das würde bedeuten , dass wir jedes einzelne Element im Random-Modul referenzieren können jedes einzelne Element im . Wir könnten sofort darauf verweisen, ohne auf etwas anderes verweisen zu müssen. Sie können gemischt speichern, weil es bereits importiert wurde, dann könnten wir dies ausführen und das würde gut laufen. Das Problem mit der Importall-Anweisung ist, dass wir nicht verwenden wollen, wir möchten dies nicht wirklich verwenden und es ist gefährlich, gefährlich, sie zu verwenden, weil wir möglicherweise Konflikte mit dem haben , was wir haben bereits in unseren Funktionen, die wir bereits in unserem Code haben. Eine letzte Sache, die Sie bei Modulen oder Paketen erwähnen sollten, ist, dass es sich sogar um Pakete handelt, die Sie online herunterladen können. Eigentlich einer der größten Vorteile des Lernens von Python, ist einer der größten Vorteile des Lernens von Python, dass viele Entwickler auf der ganzen Welt erstaunlich geschrieben haben, da es immer noch populär und leistungsfähig viele Entwickler auf der ganzen Welt erstaunlich geschrieben haben ist Bibliotheken mit Modulen, die Sie herunterladen können, um erstaunliche Dinge zu tun , ohne den Schwergewichtscode selbst schreiben den Schwergewichtscode zu müssen oder das Rad neu erfinden zu müssen. So können Sie tatsächlich online nach Paketen suchen , nach Modulen mit vielen Funktionen und Funktionen , die Sie ohne Rehabilitation nutzen können , um das Rad neu zu erfinden. Einige Beispiele oder einige Machine Learning-Pakete sind einige Statistikpakete , die Sie verwenden könnten. Die wirklich interessanten Dinge da draußen, erhalten Sie Zugang zu den öffentlichen Bibliotheken. Es ist so einfach wie die Verwendung eines Paketmanagers, um diese Bibliotheken herunterzuladen und sie dann in Ihren Skripten zu verwenden. In diesem Beispiel werde ich Pip verwenden, das mit Ihrer Python-Installation geliefert werden sollte. Also können Sie in meinem Fall versuchen, Pip in meinem Gesicht PIP3 ist, damit Sie es auch durch uns stolpern können. Ich werde sagen, pip3 install pandas, was ein sehr berühmtes Dataframe-Modul ist. Ich habe Pandas heruntergeladen und jetzt haben sie es heruntergeladen , bedeutet, dass ich es in meinem Skript referenzieren kann . Ich kann Pandas retten. Und im Moment habe ich alle, die normalerweise so Art wie SPS verwendet werden. Ich kann PS sagen. Und jetzt habe ich alles von diesem Modul für mein Skript verfügbar. Es gibt also ein Beispiel dafür , wie Sie ein öffentliches Modul von der Verwendung des Paket-Managers herunterladen und es dann in einem Ihrer Skripte verwenden würden ein öffentliches Modul von der Verwendung des Paket-Managers herunterladen von der Verwendung des Paket-Managers . Aber vorerst, lasst uns eine Zusammenfassung machen. Heute war die letzte konzeptionelle Lektion die du gerade programmierst, du hast es gemacht, du hast es so weit geschafft, also herzlichen Glückwunsch. Module werden in Python verwendet, um den bereits geschriebenen Code zu nutzen und zu vermeiden, das Rad neu zu erfinden oder Code neu zu schreiben oder mit einer Codierung trocken zu bleiben , damit wir uns nicht wiederholen. Sie können Ihre eigenen Punkt-Py-Dateien als Module eingeben, um einen beliebigen Modul zu importieren , wenn die Python-Standardbibliothek, die bei der Installation von Python oder drei installiert wurden, Module installieren können von anderen Entwicklern auf der ganzen Welt geschrieben und importieren sie dann mit ihnen in Ihren Skripten. Jedes Skript hat ein Namensattribut. Wenn Sie ein Skript direkt ausführen, entspricht dieses Attribut der Zeichenfolge main. Und wenn Sie ein Modul importieren, wird diese Moduldatei mit dem Name-Attribut ausgeführt , das dem Namen des Skripts entspricht. Da jedes Mal, wenn wir eine Punkt-PY-Datei importieren , ein Modul hat, wird die Datei ausgeführt. Wir verwenden den if-Namen, der der Hauptsyntax entspricht, wie er im Hauptcode des Skripts unter der Funktion geschrieben im Hauptcode des Skripts unter der Funktion , die wir main für Konvention aufrufen Je nach Zweck dessen, was ist Wenn Sie importiert werden, können Sie den Modulnamen oder das Eingabemodul-Objekt des Modulnamens oder aus dem Modulnamen importieren , was das letzte nicht empfohlen wird. Sie können Aliase verwenden, indem Sie als mein LDS verwenden, oder Sie können Pip drei verwenden, um Installationsmodule auf der ganzen Welt herunterzuladen. Das habe ich zuvor erwähnt. So erhalten Sie pip in Ihrer Befehlszeile und sagen pip installieren Sie das Modul , das Sie installieren möchten, um es aus der Bibliothek zu installieren. Und schließlich schauen wir uns den Abschnitt „Verstehen“ an. Wir haben für heute drei Fragen gestellt. Zögern Sie nicht , im Community-Bereich oder im Chat-Bereich Fragen zu diesen Fragen zu stellen , da wir dort aktiv sind. Und wenn nicht, viel Glück damit. Und wir sehen uns morgen wieder , um mit dem Projekt zu beginnen. 27. Tag 24 - Projekt - Python Learning App (1/5): Willkommen zurück mein Freund in Tag 24. Schauen wir uns die heutigen Ziele an. Heute wollte also der erste Tag des Projekts sein. Also laden wir das Projekt zunächst von GitHub herunter. Dann werden wir uns noch ein paar Kontexte aus den Projektdateien ansehen . Und dann werden wir einige Techniken sehen, einige nützliche Techniken aus dem Konzept, die wir bereits kennen, aber etwas oder einige neue Wege , wie wir dieses Wissen nutzen können, in das wir bereits verfügen einige nützliche Techniken speziell für das Projekt. Unser letztes Projekt wird also eine Python-Anwendung sein, die eine Quiz-App sein wird, die wir über unsere Befehlszeilenschnittstelle ausführen werden , die wir auch unser Terminal genannt haben. Es ist eine App, die Sie über das Wissen befragt , das Sie über was immer Sie wollen. Und in diesem Fall werden wir in unserem Python-Wissen tun , dass Sie unsere aktiven Rückruftechniken üben können . Wir werden in der Lage sein, unsere Weltraumwiederholung zu üben, und all das mit dem Ziel alles zu erinnern, was wir gelernt haben Das Konzept der Struktur der Anwendung lässt Sie Quiz Sie haben jedes Thema zu Fragen, die Sie verknüpfen, und es wird eine Punktzahl behalten, damit Sie wissen, welche Themen mehr Aufmerksamkeit benötigen und was Sie genauer untersuchen müssen. Schauen wir uns die Anwendung vorerst an, um die Dateien herunterzuladen, die wir für das Projekt benötigen. Lass uns auf GitHub.com gehen. Hier. Hier wirst du suchen. Du siehst dir die Suche an GitHub, du wirst nach magnetisch suchen. Python-Lernen. Github ist einfach ein Ort, an dem Leute den Code teilen können oder man kann sich ihn als Patrioten vorstellen. Die Leute könnten ihren Code auf der ganzen Welt teilen. Hier können Sie also sehen, dass, wenn Sie zur kognitiven Leichtigkeit gehen, mein Repository und dann das Python-Lern-Repo, das für Repository steht. Hier sehen Sie, dass es eine README gibt , die eine Beschreibung wie das Projekt oder wie das Python-Skript funktioniert. Was wir dann tun werden, ist, dass wir die Datei als Zip-Datei herunterladen werden. Also klickst du hier an, das wird die Zip herunterladen. Und dann öffnest du den SIP. Soil öffnet den Python-Ordner. Und jetzt wirst du sehen, dass du drei verschiedene JSON-Dateien hast . Ein Punkt p-y, die Hauptdatei, die Hauptskripte und dann ein Read Me, die einfachere README-Datei, die Sie sind, die Sie hier unten sehen. Dies ist die Read Me-Datei, nur eine Willkommensseite und eine Erklärung dessen, was das Skript macht. Dann hast du die Hauptdatei, die das Hauptprojekt ist , mit dem wir arbeiten werden. Und dann haben wir diese drei JSON-Dateien, die Daten sind, die wir verwenden werden , um die Fragen, die Themen und die bisherigen Score-Datei zu speichern . Wenn wir diese Datei öffnen, wird die Hauptdatei ungefähr so aussehen. Wenn wir diese Python-Drei-Hauptleitung ausführen, werden wir sehen, dass unsere Anwendung läuft. Sie werden also willkommen in Ihrer neuen Python-Lern-App sein. Wählen Sie ein Thema aus, das Sie überprüfen möchten, und Sie werden zehn Fragen pro Lauf an Mexiko gestellt. Also viel Glück. Und das ist die Hauptanwendung. So funktioniert das, dass Sie einfach eine Reihe des Themas auswählen , das Sie überprüfen möchten. Lass uns vorerst eins machen. Sie möchten also, würde das String-Thema auswählen , das zwei Fragen hat, wird eins fällig und Enter. Wir werden gefragt, wir werden prompt sein, okay, eine von zwei Fragen und was lernt die Funktion nicht? Weiß ich vorerst, dass die Len-Funktion die Länge eines in sie übergebenen Objekts zurückgibt. Wir werden sehen, wir werden C oder C sagen , das ist richtig. Guter Job. Und dann drücke eine beliebige Taste, um fortzufahren. Ich drücke die Eingabetaste und fahre dann mit der nächsten Frage fort. Dann frage ich mich auch schnell , um die folgende Aussage zu erklären. Druck. Okay, es ist Selbstformat. Es ist eine Formatfunktion. Ich weiß, dass es so sein wird, sagen wir, ein würde speichern , das stimmt. Guter Job. Drücken Sie eine beliebige Taste, um fortzusetzen. Und dann sagt es mir unglaublich, dass du 100% erzielt hast und dann ja eingibst, um die App erneut auszuführen, gib jedes andere Q ein, um zu beenden. Ich sage ja, um die App erneut auszuführen. Und ich werde sehen, dass die vorherige Punktzahl für die Zeichenfolge, Strings Thema aufgefüllt ist, jetzt ist es jetzt 100%, weil ich es das letzte Mal in Xcode um 100% gemacht habe . So läuft das Skript. Und jetzt kannst du sehen , dass du rennen kannst und damit herumspielen kannst, wie du willst. Sagen wir zum Beispiel, jetzt sechs, ich möchte den Abschnitt „Alle“. Dies sammelt Fragen aus allen Themen und sammelt eine zufällige Anzahl von zehn Fragen. Sie können also sehen, sehen wir hier, dass wir das letzte Element einer Zeichenfolge der Liste speichern möchten das letzte Element einer Zeichenfolge der Liste speichern , die B wäre . Guter Job. Ich werde einfach sein, es wieder ein geben wird, das ist richtig. Guter Job. Ähm, es wird zufällig ein paar Briefe machen. Du hast es fast verstanden. Die richtige Antwort war, und es sagt mir die richtige Antwort, wenn ich es falsch mache. Sie werden fast von Trickfragen die richtige Antwort bewacht . Was ist das Unveränderliche? Okay. Ich mache es nur zufällig hier. Ich verstehe alles falsch, weil ich sie zufällig mache. Und mal sehen, du hast 40% erzielt und wenn ich dann noch einmal ja tue, möchte ich es noch einmal versuchen, dann habe ich 40% hier drin überschritten. Und wenn ich es noch einmal auf 100 probiere, wird dies in einen 100 und als vorherigen Akkord umfüllen . Aber jetzt können Sie mehr oder weniger sehen, wie die App verzweigt, und das ist so ziemlich das, was wir anstreben. Was Sie jetzt tun werden, ist, dass Sie es tun werden, sich das Python-Hauptskript ansehen, alles auswählen und löschen. Weil es wahrscheinlich verdoppelt wird, wird mit ihm arbeiten. Dann ist die Frage Datei, Sie werden das verwenden, wir verwenden diese sowie die Themendatei und die vergangene Score-Datei, die am Anfang leer war, ein leere JSON-Zeichenfolge. Worum ich dich gerade gebeten habe, ist, mit den Skripten herumzuspielen , bevor du den Inhalt löschst , mit dem Skript herumzuspielen. Sie wissen also was das ist, was die Funktionalität ist. Weil zum Beispiel eine andere Funktionalität, die wir haben, darin besteht, dass jedes Mal Sie die Frage stellen, zum Beispiel, wenn ich ein Thema gegen Strings mache, diese Reihenfolge von ABC randomisiert wird. Es ist immer wie eine andere Reihenfolge. Das ist ein gutes Beispiel für etwas , das nicht funktioniert. Und dann ist eine weitere Funktionalität, die es hat , dass maximal zehn Fragen sind. Zum Beispiel enthält ein Abschnitt mehr als zehn Fragen wie den Abschnitt „Alle“. Und ich habe alles getan, was ich vorher gesagt habe, es würde nur maximal zehn Fragen stellen. Das ist eine andere Sache, die immer zufällig berücksichtigt werden muss , dass es immer zufällig Fragen und immer in einer zufälligen Reihenfolge von a, B, C und D auswählt . Nehmen Sie sich also etwas Zeit, . Nehmen Sie sich also um mach dich mit dem Drehbuch vertraut. Jetzt weißt du, wie es funktioniert. Und gehen Sie auch durch die README, gehen Sie durch die README-Datei oder im Repo durch, Sie können es lesbarer sehen. Gehen Sie durch die lesbare Read Me-Datei und erfahren Sie mehr über die Funktionalität des Codes und wo wir anstreben. Also zuerst, wie lesen wir eine Datei? Nun, wir haben bereits über das Lesen von Dateien gesprochen und jetzt zeige ich Ihnen, wie wir mit einem sehr gängigen Dateityp in der Programmierung namens JSON arbeiten können . Json steht für JavaScript-Objektnotation. Und wir können uns diese Dateien vorstellen , als würden wir uns ein Python-Wörterbuch ansehen. Schauen wir uns zum Beispiel die JSON-Datei der Fragen an. Wir können sehen, wie es einem Python-Wörterbuch sehr ähnlich ist. Wir können jetzt sehen, dass der Schlüssel diese Nummer eins sein würde. Dann wäre der Wert für diesen Schlüssel all dies in den geschweiften Klammern. Dann würden wir in diesen geschweiften Klammern, die ein Wörterbuch von sich selbst sind, die ein Wörterbuch von sich selbst sind, verschiedene Schlüssel bekommen. Also Themen, Frageoptionen, Antwort als verschiedene Schlüssel und dann jeder Schlüssel mit einem anderen Wert. Dieser Wert wäre also eine Liste. Dieser Wert wäre beispielsweise string. Dieser Wert wäre ein anderes Wörterbuch. Wir können also sehen, dass wir ein Wörterbuch in einem Wörterbuch in einem Hauptwörterbuch haben. Also ein JSON-String , der hier beginnt und hier unten als geschweifte Klammer endet. Es ist also so ziemlich, wir können es als Python-Wörterbuch betrachten . In dieser Frage ist Datei, wir können sehen, dass Frage eins die Themen, Strings, Listen, Wörterbücher und dann Frage hat , die eigentliche Frage keine Funktion verleiht, und dann die verschiedenen Optionen, die wir haben, das ABC verschiedene Optionen. Und dann brauchen wir natürlich die Antwort. Wir brauchen die richtige Option für die richtige Antwort, nämlich der Buchstabe a. Aber im eigentlichen Programm, wenn es läuft, mischt es diese Antworten tatsächlich und versteht Intelligenz, die ist die richtige Antwort. Nun, wie verbessern wir uns tatsächlich? Wie laden wir den Inhalt dieser Datei tatsächlich in unser Hauptskript? Was wir hier machen, was wir tun oder was wir hier verwenden, ist der Import, die JSON-Bibliothek, die sich in der Python-Standardbibliothek befindet. Wir müssen es also nicht herunterladen, was es einfach in unsere Datei importiert . Um die JSON-Bibliothek importieren zu verwenden, verwenden wir sie wie folgt. Wenn ich zum Beispiel in der Ordnerbreite meine, meine Dateien bin, die ich durchlesen möchte. Ich würde in diesen Ordner gehen und dann in der importierten JSON-Anweisung verwenden . Und dann würde ich es mit Open machen, wie wir im anderen Abschnitt gesehen haben. Lassen Sie uns Themen machen, zum Beispiel die Themendatei. Werfen wir einen Blick auf die Themendatei. Es ist einfach eine Wörterbuchbreite, fünf Schlüssel und Phi-Werte. Sehr einfaches Wörterbuch. Betrachten wir die Themen JSON, JSON-Datei als Dateiobjekt. Dann benutzen wir einfach, machen wir die Print-Anweisungen und wir verwenden die JSON-Bibliothek. Wir verwenden die Load-Funktion und übergeben sie im Dateiobjekt. Nennen wir das tatsächlich. Anstatt es sofort zu drucken, nennen wir diese Datei Load JSON. Dot-Load-Dateiobjekt. Wenn wir jetzt drucken, wenn wir die Datei laden, sehen wir, dass sie den Inhalt der Datei als Wörterbuch enthält. Denn wenn wir das Laden der Typdatei drucken, sehen wir, dass es sich um ein Wörterbuch handelt. Dann wäre ein anderes Beispiel, das für uns heute nützlich sein wird für uns heute nützlich , die JSON-Dump-Funktion. Wie das funktioniert ist, dass wir zum Beispiel mit open verwenden werden . Wir werden die letzten Ergebnisse in diesem Kurs verwenden, und dann werden wir sie in der W Option W übergeben, mit der wir in die Datei schreiben können. Und dann möchte ich Dateiobjekt sagen. Und dann sagen wir k JSON Dump. Dann sagen wir die Dateiladung, die auf die vorherige Dateilast verweist die wir hatten, hatten wir angegeben. Dann sagen wir „Dateiobjekt“. Wenn wir dann lesen, lesen wir vergangene Ergebnisse für Line in. Eigentlich muss ich es immer noch hier drin schließen. Und als Dateiobjekt für Zeile im Dateiobjekt drucken Sie Zeile. Und unerwartet das denke ich, dass es Klammern fehlen wird. Natürlich drucken Sie ein Dateiobjekt, das nicht definiert ist. Machen Sie weiter Objekt. Wir können sehen, dass es den Inhalt hat, den wir erwartet haben, weil wir in die Datei eingegeben haben. Wir werden auch eine Funktion namens Shuffle aus dem Import aus dem Shuffle aus der zufälligen, leider zufälligen Bibliothek verwenden. Was macht diese Funktion? Und das haben wir in der Vergangenheit in einem Durchgang gesehen. Aber was diese Funktion bewirkt, ist, dass wir B, C und D haben, wenn wir eine Liste B, C und D haben, wenn wir . Dann sagten wir, wir sagten zufällig, mische meine Liste oder gib sie in meine Liste. Wenn wir dann drucken, wird unsere Liste gemischt. Also BAC d, es nimmt ein Argument als schreckliches Argument und es gibt eine gemischte Version dieses Objekts zurück. Eine weitere nützliche Funktion , die Sie wissen sollten, ist eine aus der Betriebssystembibliothek. Wir importieren die Betriebssystem-Bibliothek. Und wenn wir das Betriebssystemsystem machen, ist dies, als würden wir die Befehlszeile oder Anweisung eingeben oder an sie senden. Wenn wir hier aufräumen würden, würde der Bildschirm diesen löschen. Was würde diese Anweisung tun, ist, dass wenn wir ein Eingabesystem machen, sie jede Zeichenfolge, die Sie an die Systemfunktion übergeben, übergeben wird . Es wird es auf den Bildschirm weitergeben, als ob es so wäre, als würden wir es selbst nennen. Wenn wir die Clear Funktion sagen, wird der Bildschirm für uns gelöscht. Also machen wir das Äquivalent zu diesem. Mal sehen, ob es uns klar geht. Aber das wäre, das würde für das Mac OS-System funktionieren. Wenn Sie ein Windows-Betriebssystem hätten, würden Sie das Betriebssystemsystem verwenden. Anstatt klar, würden Sie CLS verwenden. In unserem Fall wurde der Befehl nicht gefunden, weil das in einer Oper und unserem Betriebssystem nicht funktioniert. Wenn Sie jedoch ein Windows-Betriebssystem haben, würde TLS für diese Option funktionieren. Die letzte, mit der wir uns befassen werden, die letzte Technik, mit der wir uns befassen werden. Wenn wir unser Programm beenden wollten , wenn wir beenden wollten, wenn wir einen Code ausführen und Code beenden oder beenden wollen, würden wir eine Ausnahme einer sehr spezifischen Ausnahme , die als System-Exit bezeichnet wird. In diesem Fall funktioniert es nicht. Es wird in der iPython-Umgebung nicht so funktionieren wie wir es erwarten. Wenn Sie jedoch ein System anheben, beenden Sie Ihren Code. Lasst es uns zum Beispiel finden. Dann. Beenden. Wenn Sie es in Ihrem Code erhöhen , wird es das Programm beenden. Also wann immer du hier drin siehst, lass es uns nochmal laufen. Wann immer Sie sehen, dass Q eintritt, nennt das das System tatsächlich das Rennen, die Ausnahme des Systems, und es beendet das Programm. So funktioniert das also. Das war's für die heutigen Techniken. Und das sollte ausreichen, um uns in Schwung zu bringen und uns Kontrolle darüber zu geben, was wir für unser Abschlussprojekt erreichen wollen . Genial, also lasst uns jetzt eine Zusammenfassung machen. Zuerst haben wir gesehen, dass wir die ZIP-Datei von GitHub heruntergeladen haben und uns das Python-Lern-Repo angesehen haben, steht Repo für Repository. Dann haben wir die README-Datei gesehen. Wie waren nützliche Informationen zur Funktionalität des Projekts? Und das Projekt hat drei Punkt-JSON-Dateien, aber die für das Projekt relevanten Daten und einen Punkt-Py, die die Hauptdatei mit dem eigentlichen Skript ist. Wir haben auch gesehen, dass JSON für JavaScript-Objektnotation steht , und wir können uns dies als Äquivalent zu einem Python-Wörterbuch vorstellen . Dann haben wir die Fragenpunkt-JSON-Datei gesehen, die eine Beispielfrage enthält , die für die Lernanwendung gestellt werden muss . Wir könnten dieser Datei sogar weitere Fragen hinzufügen und sie würden in das Python-Erweiterung oder das Python-Skript aufgenommen . Und schließlich sahen wir einige nützliche Techniken. Wir haben die importierte JSON-Anweisung gesehen , um die JSON-Bibliothek zu importieren. Wir haben die Load-Funktion gesehen, um ein Dateiobjekt zu laden, und wir haben die Dump-Funktion auch aus der JSON-Bibliothek gelöst um ein Wörterbuch in ein Dateiobjekt zu deponieren. Wir haben auch diese wichtige Zufallsbibliothek oder die Zufallsbibliothek gesehen und wir haben die Funktion aus dem zufälligen Bilirubin gesehen, die wir in einer Liste übergeben konnten , um gemischt zu werden. Dann haben wir gesehen, dass die Betriebssystembibliothek und wie wir die Systemfunktion verwenden konnten , um den Bildschirm sowohl für Mac als auch für Windows zu löschen. Und schließlich haben wir gesehen, wie wir eine Ausnahme für den Systemaustritt auslösen konnten , um das Programm zu beenden und es nicht mehr laufen zu lassen . Und jetzt schauen wir uns den Abschnitt „ Verstehen“ an. Für heute. Ich wollte das Projekt von GitHub herunterladen und das Projekt ausführen und mit der Bronze des Projekts herumspielen und darüber nachdenken, wie die Datendateien oder der Bud Dot JSON Dateien nützlich sind, um das Skript auszuführen. Löschen Sie auch den Inhalt der Datei main.py und stellen Sie sich Fragen wie Sie das selbst programmieren würden. Und wir beginnen morgen zusammen zu programmieren. Also viel Glück mit diesen Beiträgen. Alle Fragen, die Sie möglicherweise im Chat haben. Auch hier werden wir anfangen zu programmieren, das Programm wird morgen mit der Programmierung des endgültigen Projekts beginnen. Wir sehen uns morgen. 28. Lektion 25: Willkommen an einem anderen Tag. Okay, du tötest es auf jeden Fall weiter. Ich möchte Ihnen gratulieren, dass Sie so weit in den Kurs gekommen sind. Ich meine es ernst, wenn ich sage, dass die meisten Menschen diesem Punkt nicht einmal nahe kommen. Und das ganz anders, was Sie von der großen Mehrheit der Menschen abhebt , die sich einfach entscheiden, früh aufzuhören. Konsistenz ist eine Fähigkeit, die Sie im Laufe der Zeit verbessern. Und genau das haben wir hier gemacht. Ich möchte dir sagen, dass ich dich schätze, dass du hier bist. Wie Sie wissen, geht es heute darum, sich auszuruhen und frühere Lektionen zu Themen zu überdenken, von denen wir glauben, dass wir ein bisschen mehr verinnerlichen könnten. Ich nehme mir auch diese Zeit, um Sie an einige der Schlüssel zum Lernen zu erinnern . Gründen der Konsistenz. Es ist genau das, was wir tun. Kommt zu jedem Tag zurück. Jeden Tag baust du mehr Schwung auf. Stellen Sie sich Dinge vor , die als trainiert sind, die schwer zu starten sind, aber sobald es sich bewegt, wird das Schwierige, es aufzuhalten. Für die Wiederholung des Weltraums. Überprüfe, was du im Laufe der Zeit gelernt hast, durch aktiven Rückruf, eine hervorragende Übung für dein Gehirn. Kombinieren Sie dies mit etwas Qualität Ruhe und Erholung und Sie werden die Vergessskurve in kürzester Zeit zerquetschen . Schließlich, wenn Sie Fragen oder die Antwort haben, seien Sie aufgeschlossen, neugierig und nähern Sie sich dem Lernen und täglichen Übungen mit dem Verstand des Anfängers. Es gibt immer einen neuen Weg, den wir nicht durchlaufen haben. Wenn du denkst, dass du sie alle abgedeckt hast, denke noch einmal darüber nach, ich hoffe, du hast eine gute Erholung und wir sehen uns morgen wieder hier. 29. Tag 26 - Projekt - Python Learning App (2/5): Willkommen zurück in Tag 26, und dies wird der erste Tag der Kodierung in eigentliche Projekt, das endgültige Projekt, sein. Lass es uns mal ausprobieren. Sobald Sie die Dateien von GitHub heruntergeladen haben, sollten Sie sich so etwas ansehen. Sie haben die Fragendatei, Themendatei, die vergangene Kerndatei und dann sollte die Hauptdatei main.py leer sein da alles darin gelöscht werden sollte. Und genau das werden wir für das abschließende Projekt tun. Beginnen wir zunächst damit, die Hauptfunktion zu definieren, indem wir dieses Setup schreiben, es wird ungefähr so aussehen. Und dann werden wir in der Hauptfunktion anfangen, unseren Code zu schreiben. Der erste Teil des Codes , den wir schreiben werden Ist eine Funktion zum Laden der Dateien, das Laden der Daten aus der Frage Jake JSON, Themenzustände auf dem vergangenen Kortex, das wird etwas aussehen wie das. Ich habe die Doc-Zeichenfolge der Hauptfunktion hinzugefügt , die besagt, dass es den Hauptcode ausführt. Dann habe ich eine Funktion hinzugefügt, eine Funktion, die die JSON-Dateien lädt. Und dann übergebe ich die drei Dateien mit den drei Strings der Namensdateien, drei Strings mit den Dateinamen. Dann gibt es die Fragen, Themen zurück und übergibt Kurs in Wörterbüchern in diese Variablen. Wie wäre die Ladung? Die Definition der Funktion „JSON-Dateien laden“. Nun, die Funktion wird ungefähr so aussehen. Wir definieren die JSON-Datei. Also funktioniert das Laden von JSON-Dateien. Dann haben wir eine, eine willkürliche Eingabe von Dateinamen. Wir können also eine beliebige Anzahl von Namen eingeben , die wir wollten, und es würde in eine Liste in den Dateinamen umgewandelt werden. Das machen wir hier unten. Wir erstellen eine leere Liste mit den resultierenden Lasten und durchlaufen dann die Liste der Dateinamen. Und wir öffnen jede Datei als Dateiobjekt und dann führen wir eine aktuelle Last aus der Load JSON Load Funktion aus dem Dateiobjekt aus. Dann hängen wir die aktuelle Last in die resultierende Ladungsliste an und geben diese zurück. Hör das Ende zu. Beachten Sie hier, wie wir die JSON-Bibliothek importiert haben. Wir könnten eine JSON-Load-Funktion verwenden. Wenn wir eine Liste zurückgeben, können wir hier unten in der Hauptfunktion sehen, dass wir diese Liste auch entpacken. Wenn wir drei Dateien eingeben, erwarten wir drei Ausgaben in dieser Liste. Und das ist der Grund, warum das funktioniert. Dann, nachdem wir die Dateien in diese neuen Variablen geladen haben, möchten wir alle Daten kompilieren lassen. Wir werden diese kompilierte Daten neue Variable sehen. Und wir werden eine Funktion namens Erstellen kompilierter Daten erstellen erstellen , die die Fragen, Themen und Kurswörterbücher als Eingaben verwendet . Und dann gibt es das kompilierte Datenwörterbuch aus. Wie wird diese Funktion aussehen? Also gehen wir hier hoch und erstellen eine neue Funktion namens compiled. Erstellen von kompilierten Daten wird in den Fragen, Themen und Kurs übergeben. Schauen wir uns also an, was diese Funktion bewirkt. Er braucht Fragen, Themen und Kurs alle Wörterbücher. Und diese Funktion, was es tut ist, dass sie kompilierte Daten aus den Inhalten erstellt , die aus den Fragethemen und Passwortdateien geladen werden. Der erste Schritt, den wir machen, ist, ein leeres Wörterbuch zu erstellen. Dann ist buchstäblich der erste Schritt, den wir tun , dass wir dieses Wörterbuch durchlaufen, dass das Themenwörterbuch die Zahl und das Thema durchläuft und einfach die kompilierten Daten, die Nummer anhängen und dann hinzufügen ein Wörterbuch als Wert mit dem Thema, mit dem Themennamen. Das ist der erste Schritt, den wir machen. Dann erstellen wir dies zusätzlich, zusätzlich. Also schauten wir uns die Länge der kompilierten Daten an und fügen eine hinzu und wir erstellen daraus eine Zeichenfolge. Und wir fügen dieses zusätzliche Feld hinzu, das heißt, das das Thema als Oldfield enthält. Dies ist ein Feld, das alle Fragen haben wird und nicht durch die einzelnen Themen eingeschränkt wird. Aber wir werden eine umfassende Liste von Fragen haben. Wenn wir uns den Ausgabebildschirm ansehen, den das Projekt hat, können wir sehen, dass es die Themenliste enthält und dann eine Nullkategorie hat. Wir dachten, die Fragen, die darin eingegeben wurden. Das ist so ziemlich genau die Daten, die wir in die kompilierten Daten einbeziehen wollen, wir versuchen, die Nummer der Idee des Themas zu ermitteln. Wir versuchen, das Thema, die Anzahl der Fragen, vorherige Ergebnisse und dann die Liste der Frage-IDs zu ermitteln, die an jedes Thema angehängt werden. Das ist es, was wir hier unten bekommen. Wir bekommen, wir erstellen einen Datenwert mit den Frage-IDs als leere Liste. Wir betrachten den individuellen Datenschlüssel und den Datenwert in den kompilierten Datenelementen. Und das waren wieder kompilierte Daten, denken Sie daran, dass es das erste Wörterbuch war, das wir erstellt haben. Was wir versuchen, hierher zu kommen, ist, dass wir versucht haben, die Frage zu füllen , die ID ist 40 für jedes Thema. Am Anfang machen wir eine if-Aussage, dass es geht, wenn das Thema nicht gleich o ist, tut es etwas und wenn es gleich o ist, würde es zu dieser sonste-Anweisung laufen zu dieser sonste-Anweisung laufen und es wird etwas anderes laufen lassen. Also schauen wir uns an, was es drin macht, hier oben. Wenn es nicht allen entspricht, wird es sich die Fragepunkte ansehen. Wir werden uns all diese Fragen ansehen, diese Fragen als Wörterbuch und Schlüssel- und Wertepaare. Und dann wird es sich ansehen, ob der Datenwert ist, ob das Thema die Wertthemen sieht. Das Thema, mit dem wir uns gerade beschäftigen , ist in den Fragethemen. Dann wird es angehängt, es werden die Daten an Ihre Frage-ID-Liste angehängt , die als leere Liste begann. Es wird den Schlüssel dieser Frage anhängen. Was wir hier so ziemlich finden, als eine Liste des Themas mit einer Liste von Frage-ID-Setups zu diesem Thema. So hätten Strings zum Beispiel die Frage I D Nummer eins, weil sie in diesem Thema enthalten ist. Schließlich, wenn es sich um eine L-Anweisung handelt, also wenn es nicht im O-Sektion ist, filtert es einfach kein Thema, da es alle Fragen enthält. Es geht also durch die Frageelemente und hängt einfach alle Schlüssel an diesen Frage-ID-Schlüssel an diesen Datenwert an. Das passiert in dieser For-Schleife. Und schließlich haben wir uns den Datenwert angesehen , die Anzahl der Fragen, und wir fügen die Länge der Frage-IDs um die gesamten Fragen in dieser Kategorie zu erhalten , um die gesamten Fragen in dieser Kategorie zu erhalten. Und schließlich fügen wir den letzten Kurs hinzu. Wir erhalten den Pass-Score aus den Daten aus diesem. Wenn es leer ist oder einfach nur in das vergangene Score-Feld eingegeben wird. Dann gibt es endlich die kompilierten Daten zurück. Das ist es, was wir hier unten bekommen. Ein kompiliertes Theta. Wenn ich es hier unten gemacht habe, wenn ich kompilierte Daten gedruckt habe, habe ich das gespeichert, dann führe ich das aus. Schauen wir uns an, wie das aussieht. Es ist gerade irgendwie chaotisch. Aber Sie können sehen, dass es zum Beispiel einen Schlüssel hat , bei dem die Nummer eins der Schlüssel ist. Und du kannst das Thema sehen. Thema ist Strings und dann Frage-ID Benutzer-ID Nummer eins in Frage ID Nummer Acht. Denn wenn wir zu den Fragen gehen würden, würden wir sehen, dass die Frage Nummer eins Strings enthält und dann keiner von ihnen eine Zeichenfolge bis Nummer acht hat, die auch die Themen hat Scoring Strings darin. Das wäre die Liste der Fragen, die ich wohl zu diesem Thema betrifft. Schließlich haben Sie die eigentlichen Frage-IDs. Sie haben also wieder Strings, die Frage-ID ist 18, und dann wäre die Fragenanzahl gleich zwei, da dies die Anzahl der Fragen ist , die sie im vergangenen Ergebnis hat , gleich nicht ist. Dann Nummer zwei. Die wichtigste Nummer zwei sind also die Themen. Es wird das Listenthema haben, als die Frage-ID 10041011 ist. Und du kannst sehen, wie es läuft. Jetzt haben wir ein Wörterbuch mit den kompilierten Daten. Das war also das Ziel von heute. Die Hauptziele, um dieses kompilierte Datenwörterbuch einzurichten. Das war es für den heutigen Hauptteil des Projekts. Stellen Sie also sicher, dass Sie sich diese Schleifen ansehen , um sicherzustellen, dass Sie verstehen, was hier vor sich geht. Wie importieren Sie die Daten, wie Sie die Daten laden und wie das kompilierte Datenwörterbuch erstellt wird. Also viel Glück und poste alle Fragen, die du möglicherweise im Community-Bereich hast. Ich werde dort aktiv sein. Und so oder so, wir sehen uns morgen wieder. 30. Tag 27 - Projekt - Python Learning App (3/5): Willkommen bei Tag 27. Heute wird also der zweite Tag oder der 31. Tag 28 - Projekt - Python Learning App (4/5): Willkommen zurück In heute 28. Und wo wir mit dem Projekt aufgehört haben, war, dass wir den Benutzer auffordern , die Themen-ID einzugeben. Der nächste Schritt besteht derzeit darin, eine Instanz einer neuen Klasse zu erstellen, mit der wir eine neue Klasse erstellen werden , die als Quiz-Klasse bezeichnet wird. Wir werden das gewählte Quiz erstellen, und es wird die Quizklasse mit den Eingaben der Themen-ID, den kompilierten Daten und den Fragen sein. Wir werden hier hochgehen und eine Klasse namens Quiz erstellen . Und wir fügen die Dokumentzeichenfolge hinzu, die bleiben wird, um ein Quiz basierend auf den kompilierten Daten zum angegebenen Thema darzustellen . Jetzt bauen wir den Konstruktor. Der Konstruktor wird die Selbstthemen-ID Daten und Fragen als Eingaben kompilieren lassen . Und dann wird es die Quiz-Instanz initialisieren. Und einfach hier unten wählen wir die Selbstthemen-ID Themen-ID entspricht, um die Instanzattribute festzulegen. Schließlich, genau hier unten, randomisieren wir die Frage, zwei Fragen, die wir stellen müssen. Und hier unten können wir uns selbst Fragen sehen, die wir stellen müssen. Es ist eine kompilierte Datenthemen-ID zur Frage-ID. Wir müssen also die Frage stellen, und dann können wir einfach die Fragen zufällig oder mischen. Wir haben also eine zufällige Reihenfolge dafür. Hier. Wir können sehen, dass es nicht definiert ist, einfach weil wir es noch nicht importiert haben. Jetzt müssen Sie nur noch Zufall importieren. Und auf der Seite der Init-Methode werden wir eine Methode haben, die das Quiz ausführt. Es wird Run-Quiz genannt und es wird eine Klassenmethode sein, um die Quiz-Instanz auszuführen und den Punktestand und die Bereichsgröße oder Anzahl der gestellten Fragen zurückzugeben . Also hier unten erstellen wir unsere Methode. Also fangen wir mit einer Punktzahl von 0 an. Also fangen wir damit an. Dann erstellen wir die Bereichsgröße, die mindestens zehn betragen wird. Die Länge der zu stellenden Fragen, da wir nicht mehr als zehn Fragen stellen möchten . Dann erstellen wir einen Index für eine for-Schleife für den Index zwischen dem Bereich dieser Bereichsgröße, der wiederum maximal zehn sein wird. Dann wird es sagen, okay, aktuelle Frage wird von den Fragen stammen, die wir die Frage bekommen werden , um den Index mit diesem Index zu stellen. Dann löschen wir den Bildschirm, um eine Frage zu stellen. Und dann werden wir die Funktion „gestellte Frage“ ausführen. Es wird ausgeführt und wir geben true oder false für eine korrekte oder falsche Antwort zurück. Wenn richtig, erhöhen Sie den Punktestand um eins. Also wenn Fragen gestellt Frage Funktion, richtig, wenn es richtig ist, wird es die Punktzahl um eins erhöhen. Und wenn es falsch ist, wird es einfach das Quadrat der Städte behalten und dann wird ein beliebiger Schlüssel eingegeben, um fortzufahren. Schließlich werden wir den Punktestand und die Bereichsgröße vom am Ende dieser Methode zurückgeben lassen. Als Nächstes müssen wir eine DSP-Frage erstellen , die eine Funktion sein wird. Also sagen wir hier unten, definieren die Funktion „gestellte Fragen“ und es wird die folgenden Eingaben haben. Also Frage, Fragenummer und Gesamtzahl der Fragen. Der erste Schritt besteht also darin, eine leere Liste zu erstellen , die mit den Fragen und Optionen gefüllt und dann gemischt wird . Also hier ist was es tun wird. Es wird eine leere Liste erstellt, die mit den Fragen und Optionen beliebt ist und dann gemischt wird. Dann erstellen wir ein Tupel mit seinen ersten sieben Buchstaben des Alphabets. Und dann hat das gemischte Optionswörterbuch die Optionen in zufälliger Reihenfolge. Als Nächstes drucken wir die Frageaufforderung. Dann drucken wir Shuffle-Optionen aus denen der Benutzer auswählen kann. Und dann definieren wir eine richtige Antwort für das Frageobjekt, indem wir die richtige Antwort sagen. Und dann fordern wir den Benutzer mit der validierten Eingabefunktion auf. Und dann definieren wir aus den gemischten Optionen eine Benutzerantwort . Und schließlich vergleichen wir Antworten, um richtig oder falsch zu bestimmen, und geben wahr bzw. falsch zurück. Schließlich werden wir bis zum Ende unserer Hauptfunktion hinunter gehen . Und wir gehen zu dieser Codezeile, nur um die Run Quiz-Methode von der gewählten Quiz-Instanz aus auszuführen. Und es wird den Punktestand und die Bereichsgröße zurückgeben. Wenn wir jetzt unseren Code ausführen, könnten wir sehen, dass wir zum Hauptbildschirm kommen. wir mal, sagen wir zwei für Listen, geben Sie zwei ein. Und jetzt können wir sehen, okay, wie machen wir eine Kopie der Liste? Wir können sagen, dass C ja sagen wird, richtig. Guter Job. Und beachte, wie es heißt, zwei von insgesamt vier Fragen in Frage zu stellen, was ist eine Möglichkeit zu entfernen? Sollte B sein, die Pop-Methode, das ist richtig, gute Arbeit jeder Schlüssel, um fortzufahren. Und was ist dann die Längenfunktion bringt die Länge oder gibt die Länge zurück. Es wird B. sein , das ist richtig. Guter Job. Schließlich, was ist der Lift, der den letzten Punkt auf der Liste auswählt , der besser sein sollte, dieser besonders gute Job sein. Perfekt. Also hat es das Quiz erfolgreich ausgeführt. Das sollte es für heute sein, Leute. Vielen Dank fürs Zuschauen. Wenn wir noch ein paar Schritte verpassen, werden wir diese morgen überprüfen. Wenn Sie Fragen haben, diese gerne im Community-Bereich veröffentlichen und sicherstellen die Schritte überprüfen, die wir unternommen haben um sicherzustellen, dass wir verstehen, was wir tun. Und wir sehen uns morgen wieder. 32. Tag 29 - Projekt - Python Learning App (5/5): Hallo meine Freunde und willkommen zum 29. Tag. Heute haben wir uns so ziemlich alle mit dem Projekt beschäftigt. Wir haben alle Funktionen erstellt, die wir brauchten. Wir haben die Klasse und die Methode sowie die Methoden erstellt, die wir brauchten. Und wir sind so ziemlich fertig mit all dem. Die letzten Schritte sind die Handhabung der Ergebnisse. Um so ziemlich alles vorzubereiten, damit der Benutzer bereit ist, den Lernbereich zu beenden. Wir beginnen damit, dass wir einen klaren Anruf hinzufügen , damit wir den Bildschirm löschen können. Und dann werden wir das Endergebnis berechnen. Wenn also der Unterstrich die Umkehrung der Introversion von 100 Mal pro Punktzahl über die Bereichsgröße sein Introversion von 100 Mal pro wird. Wir können eine Prozentzahl, Prozent bekommen. Dann machen wir das vergangene Kursthema und wir machen eine Reihe des Endergebnisses plus dieses Prozentzeichens, weil dies in die endgültige oder die vergangene Kernthemen-ID eingehen wird . Darauf wird es eingehen. Dann verwenden wir einen Breitenblock, um die JSON-Datei der vergangenen Gerichte im Schreibmodus zu öffnen . Und das würde die gesamte Datei abschneiden. Und es öffnet es als Dateiobjekt als dieses Dateiobjekt. Und dann verwenden wir die JSON-Dump-Funktion. Wir werden es im Wörterbuch weitergeben, im Wörterbuch des vergangenen Kurses. Und wir werden ein Dateiobjekt übergeben. Es wird die gesamte Datei so ziemlich überschreiben. Aber da wir das vergangene Kurswörterbuch schon von früher, vom Laden, vorher hatten schon von früher, vom Laden, , sollten wir jede einzelne Version des anderen vergangenen Kurses auch in die Datei bringen. Und wir sollten nur mit der aktualisierten Version überschreiben, wobei die neue Themen-ID aktualisiert wird. Dann fügen wir auch eine if-Aussage mit else-if-Aussagen und einer L-Aussage hinzu, die sagen wird, okay, wenn das Endergebnis 100 war, werden Sie unglaublich sagen. Du hast 100% erzielt. Wenn ein Endergebnis über 90% lag, ausgezeichneter Job, erzielten Sie 90% oder über 90%. Wenn die Endergebnisse über 80, genial, Sie haben jede Punktzahl erzielt, die Koordinate verwendet, und wenn nicht , wenn es darunter liegt, werden Sie sagen, dass keine Begeisterung nur sagen wird, dass Sie jede Punktzahl erzielt haben erzielte. Der letzte Schritt besteht darin, dies hinzuzufügen. Noch ein Versuch Input. Und es wird ja sagen, wenn du die App erneut ausführen willst und nein wenn nicht. Und es wird sagen, wenn ein anderer Versuch nicht gleich ja ist, wirst du brechen. Also was wird es kaputt gehen? Es wird eine While-Anweisung brechen, eine While-Schleife, die wir sagen werden, während sie wahr ist, durchläuft alles. Wir müssen hier unten die entsprechende Einrückung einlegen. Alles befindet sich also in der Hauptfunktion. Dann haben wir jetzt alles auf einer While-Schleife. Und wenn der Benutzer etwas eingibt, das sich von einem JA unterscheidet , wird die Schleife durchbrechen und der Code wird beendet. Also lasst uns versuchen, das noch einmal auszuführen und schauen wir uns an, was wir bekommen. Lass uns Tupel machen. Also lasst uns Nummer vier machen. Wie entfernst du das Letzte, was ich habe eine Tupel- oder Trickfrage? Tupel sind unveränderlich, also sei richtig, gute Arbeit. Während das richtige Beispiel für das Erstellen eines Tupels ist, ist es mit runden, runden Klammern, also ist es ein richtiger guter Job. Großartig. Du hast 100 Punkte erzielt. Gib gestern wieder in die App ein und du wirst ein Kontinuum finden, ich werde ja sagen, großartig. Also können wir das jetzt sehen. Wir gehen einfach zu 100 und wir haben 100 und Tupel. Was wäre, wenn wir beispielsweise Module machen würden, lasst uns Nummer fünf machen. Ich werde absichtlich versuchen, ein falsches zu bekommen. Welche der folgenden Anweisungen kann verwendet werden, um das JSON-Modul aus der Bibliothek zu importieren. Ich sage, das wird sagen, dass du es fast verstanden hast. Die richtige Antwort waren alle anderen Optionen. Drücken Sie eine beliebige Taste, um fortzufahren, und es wird mir 0% sagen. Also wann immer ich ja tue und gehe zurück und sehe, dass es 0% ist. Aber wenn wir es noch einmal gemacht haben, dann sagten Alle anderen Optionen. Wir sehen, dass das richtig ist, gute Arbeit. Und dann sehen wir, dass du 100% erzielst. Und wir sehen, dass wir 100% bekommen, um den Kurs zu bestehen. Wir sehen also, dass unser Code reibungslos läuft. Wir betreiben unsere Lern-App erfolgreich und alles funktioniert so, wie wir es erwarten. So toller Job , wenn man so weit kommt und herzlichen Glückwunsch zum Abschluss des Projekts. Und sie sollten für alle anderen Konzepte hilfreich sein , die Sie hinzufügen wollten, und andere Möglichkeiten abnehmen, die Sie nutzen wollten. Auf diese Art, dich selbst zu befragen. Es kann auch für andere Themen hilfreich sein , so dass Sie die Themen und Fragen für Ihren persönlichen Gebrauch nutzen können die Themen und Fragen und nicht nur für Python sein müssen. Und Sie können dieser Fragendatei Fragen hinzufügen und Fragen für was auch immer stellen. Vielleicht finden Sie auch einen Nutzen dafür. 33. Lektion 30 Endings sind Neuanfängen: Erstaunlich. Du beendest den Kurs und ich möchte dir dazu gratulieren, dass du so weit gekommen bist. Du bist ein Ausreißer. Die meisten Leute beenden nicht, was sie anfangen, aber ein paar hier, das bedeutet, dass Sie keiner von ihnen sind. Also herzlichen Glückwunsch. Du hast gelernt, dass es darum geht, zurückzukommen und ihm alles zu geben, was du hast. Und diese verzögerte Befriedigung bringt die besten Belohnungen mit sich. Und jetzt können wir sehen , dass Enden einfach neue Anfänge sind , denn es wird in Python in jeder anderen Fähigkeit, die Sie gelernt haben, immer viel mehr zu lernen geben, selbst die besten Darsteller und Meister von ihre Fähigkeiten lernen und drängen sich ständig . Ich wollte mich bei dir dafür bedanken mit mir auf diese Reise gegangen bist. Und ich hoffe, es hat dir viel Spaß gemacht und gelernt. Und ich möchte Sie auch einladen, auf diesem Lernweg zu bleiben, weil Sie sehen werden, dass Sie in der Lage sind , Dinge zu tun, die Sie sich nie vorgestellt haben. Nochmals vielen Dank, und wir sehen uns sehr bald.