Python für Neueinsteiger – Python in einer Woche lernen | Andreas Exadaktylos | Skillshare
Suchen

Playback-Geschwindigkeit


1.0x


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

Python für Neueinsteiger – Python in einer Woche lernen

teacher avatar Andreas Exadaktylos, Teacher | Expert Computer Scientist | Entrepreneur

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

      1:27

    • 2.

      Warum Python lernen?

      2:02

    • 3.

      Fünf (5) Anfängertipps zum Erlernen der Python-Programmierung

      6:55

    • 4.

      EINFÜHRUNG – Python 3 (2024) herunterladen und installieren

      1:25

    • 5.

      Python 3 herunterladen und installieren (Windows)

      6:55

    • 6.

      Verwenden der Python-Shell

      2:19

    • 7.

      Python einrichten (Zusammenfassung)

      1:11

    • 8.

      Code-Editoren

      2:15

    • 9.

      Dein erstes Python-Programm – Einführung

      1:09

    • 10.

      Unser erstes Python-Programm schreiben

      9:12

    • 11.

      Machen wir einige Fehler

      6:31

    • 12.

      Eine Variable erstellen

      13:45

    • 13.

      Kommentare hinzufügen

      4:06

    • 14.

      HERAUSFORDERUNG: Interagieren mit IDLE (Python Shell)

      4:44

    • 15.

      So findest du Hilfe

      3:06

    • 16.

      Schreiben deines ersten Python-Programms (Zusammenfassung)

      1:06

    • 17.

      Saiten und Saitenmethoden (Einführung)

      1:23

    • 18.

      Was ist eine Schnur

      5:47

    • 19.

      ÜBUNG: Was ist eine Saite?

      2:18

    • 20.

      LÖSUNG: Was ist eine Saite?

      5:38

    • 21.

      Manipulieren von Saiten mit Methoden

      11:55

    • 22.

      ÜBUNG: Fall ändern

      1:09

    • 23.

      LÖSUNG: Ändere den Fall

      3:20

    • 24.

      ÜBUNG: Leerraum entfernen

      1:08

    • 25.

      LÖSUNG: Leerraum entfernen

      2:17

    • 26.

      Saiten-Indizierung

      2:36

    • 27.

      Schnur schneiden

      3:30

    • 28.

      ÜBUNG: Schnur schneiden

      0:28

    • 29.

      LÖSUNG: Schnur schneiden

      2:40

    • 30.

      Saitenkonketenierung

      2:18

    • 31.

      ÜBUNG: Saitenkonkettation

      0:38

    • 32.

      LÖSUNG: Saitenkonkettenierung

      2:38

    • 33.

      Strangformatierung

      3:50

    • 34.

      F-Saiten: eine verbesserte Syntax der Saitenformatierung

      7:04

    • 35.

      ÜBUNG: Optimiere deine Drucke

      1:06

    • 36.

      LÖSUNG: Optimiere deine Drucke

      4:39

    • 37.

      Interagieren mit Benutzereingaben()

      4:53

    • 38.

      ÜBUNG: Interagieren mit Benutzerinput

      0:46

    • 39.

      LÖSUNG: Interagieren mit Benutzerinput

      4:57

    • 40.

      Arbeiten mit Strings und Zahlen

      13:55

    • 41.

      ÜBUNG: Arbeiten mit Saiten und Zahlen

      1:07

    • 42.

      LÖSUNG: Arbeite mit Saiten und Zahlen

      6:58

    • 43.

      Print() Formatierungsmethoden

      7:43

    • 44.

      Eine Saite in einer Saite finden

      9:18

    • 45.

      ÜBUNG: Finde einen Buchstaben in einer Schnur

      0:47

    • 46.

      LÖSUNG: Finde einen Buchstaben in einer Schnur

      4:10

    • 47.

      Saiten und Saitenmethoden (ZUSAMMENFASSUNG)

      0:57

    • 48.

      PROJEKT: Erstelle ein Programm für den Druck von Belegen

      12:21

    • 49.

      Zahlen und Mathematik (Übersicht)

      1:26

    • 50.

      Numerische Arten in Python

      4:50

    • 51.

      Ganzzahlen

      6:50

    • 52.

      ÜBUNG: Definiere ganze Buchstaben

      1:17

    • 53.

      LÖSUNG: Definiere ganze Buchstaben

      4:07

    • 54.

      Gleitkommpunk-Zahlen

      7:38

    • 55.

      Arithmetische und Vergleichsoperatoren

      5:15

    • 56.

      Logische (boolesche) und verkettene Vergleichsosoperatoren

      2:46

    • 57.

      Fehler der Schwebkompositiondarstellung

      6:02

    • 58.

      Mathematische Funktionen und Zahlenmethoden

      9:32

    • 59.

      Zahlen als Strings formatiert

      4:15

    • 60.

      ÜBUNG: Prozentsatz anzeigen

      0:19

    • 61.

      LÖSUNG: Zeige einen Prozentsatz an

      1:04

    • 62.

      Komplexe Zahlen

      4:40

    • 63.

      Der Operator Rest (%-Modulo)

      6:25

    • 64.

      Zahlen lesen mit der Eingabefunktion

      8:11

    • 65.

      Zahlen und Mathematik (ZUSAMMENFASSUNG)

      1:24

    • 66.

      HERAUSFORDERUNG: Einen Prozentsatz berechnen

      3:21

    • 67.

      HERAUSFORDERUNG: Durchschnittsberechnung

      5:15

    • 68.

      HERAUSFORDERUNG: Eine mathematische Formel in eine Programmieraussage umwandeln

      5:47

    • 69.

      Datum und Uhrzeiten

      4:18

    • 70.

      Was ist eine Liste?

      5:50

    • 71.

      Arbeiten mit Listen

      3:44

    • 72.

      Numerische Listen erstellen

      1:41

    • 73.

      Drucklisten

      2:07

    • 74.

      Tupel

      4:00

    • 75.

      Tupel-Aufgabe, Verpacken und Auspacken

      4:00

    • 76.

      Arbeiten mit Wörterbüchern

      4:07

    • 77.

      Sets

      4:25

    • 78.

      If-Statements

      3:38

    • 79.

      BEISPIELE für die Verwendung der if-Anweisung in einer Anwendung

      10:19

    • 80.

      Für Loops

      2:09

    • 81.

      BEISPIELE für die Verwendung der for-Anweisung

      6:12

    • 82.

      while-Schleifen

      3:35

    • 83.

      Unterbrechen und weitermachen

      2:25

    • 84.

      PROJEKT: Ratespiel

      6:27

    • 85.

      Verwenden von if-Statements mit Listen

      1:42

    • 86.

      Verwenden für Loops mit Listen

      2:02

    • 87.

      Verwenden einer While-Schleife mit Listen und Wörterbüchern

      3:03

    • 88.

      Erstellen von Stapeln mit Listen

      4:04

    • 89.

      Suchen und Sortieren von Listen

      4:34

    • 90.

      Looping durch ein Wörterbuch

      2:14

    • 91.

      Ersetzen der Switch-Anweisung durch ein Wörterbuch

      3:33

    • 92.

      Arbeiten mit dem Zählerobjekt

      2:25

    • 93.

      Was sind Funktionen

      2:13

    • 94.

      Eingebaute Funktionen

      2:09

    • 95.

      Deine Funktion definieren

      2:57

    • 96.

      Mehr eingebaute Funktionen

      9:37

    • 97.

      Globaler und lokaler Bereich

      4:54

    • 98.

      PROJEKT: Verbessertes Ratespiel (Version 2) – TEIL 1

      7:14

    • 99.

      PROJEKT: Verbessertes Ratespiel (Version 2) – TEIL 2

      4:29

    • 100.

      PROJEKT: Verbessertes Ratespiel 3 (Version 2) – TEIL 3

      9:16

    • 101.

      Umgang mit Fehlern

      3:22

    • 102.

      Häufige Syntaxprobleme

      8:40

    • 103.

      Werde ein Insekten-Bounty-Jäger

      9:10

    • 104.

      Grundlegender Umgang mit Ausnahmen

      5:57

    • 105.

      Umgang mit mehreren Ausnahmen

      7:26

    • 106.

      Ausnahmen erhöhen

      2:28

    • 107.

      So debuggging du in IDLE 2021

      3:27

    • 108.

      Stein, Papier, Schere ÜBERSICHT

      1:49

    • 109.

      Stein, Papier, Schere mit Python-Eingaben und Loops

      7:46

    • 110.

      Stein, Papier, Schere mit Python – So findest du den Gewinner

      13:24

    • 111.

      Was ist objektorientierte Programmierung (OOP)?

      3:16

    • 112.

      Python-Kurse

      2:50

    • 113.

      Klassen- und Instanzattribute

      5:18

    • 114.

      Hinzufügen von Attributen zu einem Python-Kurs

      6:44

    • 115.

      Hinzufügen von Methoden zu einem Python-Kurs

      6:00

    • 116.

      Einführung in die OOP-Vererbung

      3:52

    • 117.

      Beispiel einer Vererbung

      9:15

    • 118.

      Skripte, Module, Pakete und Bibliotheken 2022

      4:18

    • 119.

      Ein Modul schreiben

      2:44

    • 120.

      Der Suchpfad des Moduls

      4:42

    • 121.

      Die Importerklärung

      6:08

    • 122.

      Die dir() Funktion

      3:52

    • 123.

      Ein Modul ausführen

      5:41

    • 124.

      Ein Modul neu laden

      3:16

    • 125.

      So installiert man ein Paket in Python mit PIP

      3:18

    • 126.

      Python-Pakete

      4:33

    • 127.

      Erstellen von Grafiken und Formen mit dem Schildkröten-Modul von Python

      5:56

    • 128.

      Python öffnet, liest aus und schreibt in eine Datei

      5:49

    • 129.

      Eine Verzeichnisliste und Dateiattribute erhalten

      7:56

    • 130.

      Verzeichnisse erstellen und löschen

      10:28

    • 131.

      Löschen, Kopieren, Verschieben und Umbenennen von Dateien

      7:37

    • 132.

      Meilensteinprojekt Erstelle ein interaktives Mathe-Spiel

      1:30

    • 133.

      Teil 1 Module importieren und Benutzerbewertungen erhalten

      3:44

    • 134.

      Teil 1 Umgang mit Ausnahmen und Aktualisierung der Nutzerbewertung

      7:15

    • 135.

      Teil 1 So generierst du die Fragen und die Mathematik

      6:16

    • 136.

      Teil 1 Einen mathematischen Ausdruck generieren und das Ergebnis bewerten

      6:03

    • 137.

      Teil 2 Das Hauptprogramm schreiben

      5: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.

1.113

Teilnehmer:innen

5

Projekte

Über diesen Kurs

Ein praktischer Programmierkurs Python 3 für absolute Anfänger:innen – Programmieren mit Python lernen (+Python-Projekte)

Beginne sofort mit dem Programmieren in Python!   

Wenn du ein Anfänger im Programmieren bist, dann hilft dir dieser Kurs dabei, Python-Programmierung schnell zu lernen.

Python ist eine unglaublich effiziente Sprache: Deine Programme können mit weniger Codezeilen mehr tun, als dies viele andere Sprachen erfordern würden. Es wird auch in wissenschaftlichen Bereichen für die akademische Forschung und angewandte Arbeit verwendet.   

Mein Ziel war es, einen Kurs für Menschen jeden Alters zu erstellen, die noch nie in Python programmiert oder überhaupt nie programmiert haben, damit sie Programme erstellen können, die funktionieren.   

Der Kurs ist voll von Beispielen und Projekten, die sorgfältig ausgewählt wurden, um jedes Konzept zu demonstrieren, damit du ein tieferes Verständnis der Sprache erlangen kannst. Es ist als einzige, umfassende Lernressource für alle Python-Neulinge konzipiert, unabhängig davon, ob sie Python 2.X, Python 3.X oder beide verwenden werden.   

Python-Programmierung für Anfänger:innen ist auch perfekt für Mittelschulleiter:innen und Oberstufenleiter:innen, die ihren Teilehmern:innen eine projektbasierte Einführung in das Programmieren bieten möchten.  

Möchtest du praktische Python-Programmierung lernen, die du sofort anwenden kannst? Wenn ja, dann ist dies der richtige Kurs für dich. Es ist vollständig projektbasiert und voller Beispiele, die vollständig erklärt und leicht verständlich sind. Es war ein Recorder in Full HD 1080p.

 Python ist eine großartige Sprache, die man lernen kann. Melde dich also für diesen Kurs an und lass uns loslegen!

Triff deine:n Kursleiter:in

Teacher Profile Image

Andreas Exadaktylos

Teacher | Expert Computer Scientist | Entrepreneur

Kursleiter:in

LinkedIn: https://www.linkedin.com/in/andreasexadaktylos

Hi, I am Andreas and I'm a teacher. I really love learning and teaching whenever i can.

I have over 16 years of experience in teaching as an instructor. I have my own computer learning school, called Futurekids, from 2001 to now. I am the founder of Mellon Training, an online video tutorials learning school.

I have a Masters Degree in Computer Science and a Degree in Electronic Engineering.

I always wanted to create my own business. Being your own boss is an incredibly liberating experience but difficult as well.

I have a passion for software products that make people's lives easier. I love to create websites and optimizing them with Search Engine optimization techniques. I created my online e-sh... Vollständiges Profil ansehen

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 und willkommen. Mein Name ist Andreas und ich werde dein Lehrer für diesen Python-Kurs sein. Ich bin Computeringenieur und seit über 20 Jahren Lehrer. Ich habe meine Computerschule und bringe Zehntausenden von glücklichen Schülern wie Ihnen Python-Programmierung bei. Und ich freue mich sehr, Ihr Dozent für diesen Kurs zu sein. Python ist absolut die am schnellsten wachsende Programmiersprache zu den drei Sprachen geschafft für die Zukunft zu lernen gilt. Python ist eine der vielseitigsten Programmiersprachen. Sie können es für alles verwenden, z. B. maschinelles Lernen, Webentwicklung , Anwendungen, Automatisierung, Spieleentwicklung und vieles mehr. In diesem Kurs erhalten Sie eine detaillierte und gründliche Erklärung der grundlegenden Konzepte der Python-Programmierung. Und ich werde den Lernprozess so einfach und einprägsam gestalten, Sie sich nicht einmal Notizen machen müssen. Du wirst lernen, indem du viele Projekte machst und baust. Auf dem Weg dorthin haben Sie auch Meilensteinprojekte, die Ihnen helfen, voll funktionsfähige Programme und Spiele zu entwickeln , die Sie Ihren Kollegen präsentieren können. Wir haben über 100 Vorträge mit zehn ADPs, hochwertige Erklärvideos und ausführliche Folien, die jeder Vorlesung beiliegen Wenn Sie also völlig neu Programmierung oder in der Python-Sprache sind, sind Sie hier genau richtig. Also, mit all dem im Hinterkopf, worauf warten Sie noch? Fahren Sie fort und klicken Sie auf die Schaltfläche und wir sehen uns auf der anderen Seite. 2. Warum Python lernen?: Hallo und willkommen in der aufregenden Welt des Programmierens. In dieser Vorlesung geben wir einen kurzen Überblick darüber, was Python ist, warum Python für die Programmierung ausgewählt wurde und was Sie mit Python machen können. Python wurde 1990 von Guido Van Rosam entwickelt. Es wurde speziell als einfach zu bedienende Programmiersprache Die Programmiersprache Python ist nach der Comedy-Gruppe Monty Python benannt , nicht nach dem Reptil Wenn wir Programmieren sagen, meinen wir, dass wir Anweisungen eingeben die der Computer ausführen soll Python ist eine weit verbreitete Programmiersprache auf hohem Niveau. Natürlich sind viele Programmiersprachen auf hohem Niveau verfügbar, wie C, C plus plus und Java. Aber wenn Sie mit dem Programmieren noch nicht vertraut sind, ist Python ein guter Anfang. Sehen wir uns einige Gründe an, warum man Python lernen sollte. Erstens ist Python einfacher als andere Programmiersprachen und ideal für Anfänger. Die meisten Programme benötigen im Vergleich zu anderen Sprachen erheblich weniger Codezeilen , um dieselbe Aufgabe auszuführen . Zweitens ist Python eine effiziente Sprache. Python-Syntax hilft Ihnen dabei, sauberen Code zu schreiben , der leicht zu lesen, zu debuggen und einfach zu erweitern und darauf aufzubauen Drittens hat Python ein breites Anwendungsspektrum. Sie können Spiele entwickeln, Webanwendungen erstellen und Geschäftsprobleme lösen. Python wird auch in wissenschaftlichen Bereichen häufig für akademische Forschung eingesetzt . Viertens verfügt Python über eine große Anzahl von Tools von Drittanbietern wie Pinstaller, mit denen wir unseren Python-Code in eigenständige ausführbare Programme für Betriebssysteme wie Windows und macOS verpacken können unseren Python-Code in eigenständige ausführbare Programme für Betriebssysteme wie Windows und macOS verpacken eigenständige ausführbare Programme für Betriebssysteme wie Windows und macOS Fünftens hat Python eine großartige Community. Eine unterstützende Community ist entscheidend für die Lösung von Problemen, insbesondere bei Ihren ersten Programmierschritten. Dies sind die fünf wichtigsten Gründe warum wir Python wählen und lernen. Wenn ich dich überzeugt habe, ist es Zeit anzufangen. Danke fürs Zuschauen. 3. Fünf (5) Anfänger-Tipps für die Einführung Python-Programmierung: Willkommen zurück alle. In diesem Video gebe ich Ihnen fünf Anfängertipps zum Erlernen der Python-Programmierung. Sie werden sich ansehen, wie Sie jeden Tag programmieren können, wie das Ausschreiben helfen kann, interaktiv zu werden, Pausen zu sprechen und gute Fragen zu stellen. Beginnen wir damit, uns jeden Tag die Programmierung anzusehen . Wenig ist oft besser als ein großer Brocken pro Woche. Wenn Sie nur eine Stunde pro Woche hätten, verzweifeln, wären Sie viel besser dran, zehn Minuten an sechs Tagen der Woche zu verbringen und einen freien Tag zu haben , als eine Stunde an einem Tag der Woche zu verbringen und sechs Tage frei zu haben. eine lange Zeit verlassen, bevor Sie neue Fertigkeit üben, kann bedeuten, dass sie Sie verloren geht und Sie am Ende immer wieder denselben Boden wiedererlangen müssen . Während es Ihnen hilft, es jeden Tag für eine Woche zu decken , es viel besser zu halten , und dann sind längere Lücken danach kein so großes Problem. Auch realistisch in Bezug auf die Zeit, die Sie dafür haben, ist jeder anders. Manche Leute können viel Zeit aufwenden und wir können mehr Fortschritte machen als jemand, der nur ein oder zwei Stunden Zeit hat , die eine Woche übrig hat. also realistisch sind, denken Sie daran, dass es nicht darum geht sich mit anderen Menschen zu vergleichen. Es geht darum, dich mit dem zu vergleichen, wo du angefangen hast. Beginnen Sie damit, kleine Probleme zu lösen wenn Sie mit der Programmierung beginnen, dann erwerben Sie Fähigkeiten und lernen neue Bereiche von Python kennen, die Sie zuvor nicht kannten. Und es kann Ihnen großes Vertrauen geben, schwierigere Probleme weiter unten angehen zu können . Schreib es aus. Das Ausschreiben von Notizen hilft Ihnen, Informationen besser aufzubewahren als jede andere Methode. Ja, handschriftliche Notizen helfen wirklich, wenn die Informationen Sie passieren, während Sie sie gelesen haben , und sie dann in Ihren eigenen Worten umschreiben , Ihr Gehirn nimmt sie in einer Methode auf, die Sie verstehen, und das ist der wichtigste Teil des Lernens. Es wird verschiedene Bereiche geben , auf die Sie sich konzentrieren und sich Notizen machen müssen, verglichen mit jemandem neben Ihnen. Auch die Planung von Programmen mit schriftlichen Notizen kann dazu beitragen , die Lösung klarer zu machen. Auch hier habe ich festgestellt, dass es viel hilfreicher und unmittelbarer ist, Dinge von Hand zu schreiben viel hilfreicher und unmittelbarer ist , als es auf einem Computer zu tun. Für die komplizierten, größeren Probleme, die viel Dokumentation benötigen würden. Sie möchten dies online mit einer Methode tun , die später aktualisiert werden kann. Wenn Sie dies anfänglich planen, das Ausschreiben der Art von Daten und Variablen, die Sie benötigen, sehr wichtig und lehrreich sein . Es ist oft einfacher, visuelle Darstellungen zu erstellen , wenn Sie mit Papier und Bleistift arbeiten . Und für viele Probleme ist dies eine nützliche Möglichkeit, sich ihnen zu nähern. Gehe interaktiv. Die Python-Shell ist eine großartige Möglichkeit, Code sofort zu untersuchen und zu erstellen. Es ist schnell und einfach, Code in der Python-Shell zu entwickeln, aber Sie können ihn auch verwenden, um die Methoden zu entdecken und zu erforschen, die Ihnen zur Verfügung stehen. Öffnen Sie die Python-Shell, und jetzt können Sie dies in Aktion verwenden. Machen Sie Pausen. Pausen einlegen als unglaublich wichtiger Teil des Lernens. Eine der am häufigsten untersuchten Techniken, die von Menschen verwendet werden, die im Internet lernen ist die Pomodoro-Technik. Jetzt ist dies eigentlich nur nach dem Tomatenform-Timer benannt , den die Person, die ihn erfunden hat, benutzt hat. Es besteht jedoch darin, nur einen 25-Minuten-Timer für die Arbeit einzustellen und dann eine fünfminütige Pause einzulegen und dann zu wiederholen. Es gibt viele Beweise, die veranschaulichen, dass unser Gehirn nur eine endliche Laurens Zeit hat und Pausen braucht. Ihr Gehirn braucht Zeit, um Informationen aufzunehmen und braucht auch eine Pause. Ich würde dringend vorschlagen, dass Sie eine echte Pause einlegen. Es gibt deinem Gehirn die Chance, sich zurückzusetzen. Und Sie werden oft feststellen , dass Ideen zu Ihnen kommen , wenn Sie sich im Ruhezustand befinden. Schlaf ist auch sehr wichtig für die Gedächtnisbildung. Viele Untersuchungen haben gezeigt, dass ein guter Nachtschlaf nach einem Tag des Lernens wirklich dazu beiträgt , diese Informationen zu festigen und in das Langzeitgedächtnis zu sperren. Ihr Gehirn wird daran arbeiten und es wird während dieser Pause aufgefrischt. Wenn Sie darauf zurückkommen, werden viele die Zeit sein, in der Sie etwas sehen, an das Sie gerade nicht gedacht haben, und gehen Sie los. Stellen Sie gute Fragen. An vielen Stellen in Ihrer Programmierkarriere müssen Sie um Hilfe bitten. Und oft kann das in Form von Fragen auf Websites wie Stack Overflow kommen . Dabei ist es wirklich wichtig, dass Sie Fragen richtig stellen , damit die Leute Ihnen helfen können, ohne die Art von Tests zu duplizieren, die Sie bereits durchgeführt haben , was ihnen eine gute Idee geben kann von dem, was Sie bereits getan haben und was Sie beabsichtigen, das Programm zu tun. Erstens, die g des Guten, geben Sie Kontext zu dem, was Sie versuchen zu tun. Beschreiben Sie das Problem klar. Hier auf der linken Seite sehen wir ein schlechtes Beispiel. Es heißt nur, dass ich nicht richtig drucken kann. Während wir auf der rechten Seite ein gutes Beispiel haben. Ich versuche, eine f-Zeichenfolge mit Format und kombiniert mit Variable zu verwenden mit Format und kombiniert mit , um insgesamt sechs Ziffern und eine Dezimalstelle zu erhalten. Aber ich kann die richtige Syntax nicht finden. Der auf der linken Seite kann alles sein, vom Drucken auf einem Drucker bis zur Verwendung der Print-Anweisung. Während der rechte Punkt wirklich klar ist. Wir wissen genau wo wir sind und was das Problem ist. Skizzieren Sie die Dinge, die Sie bereits getan haben , um das Problem zu beheben. Auch hier sieht man das ziemlich oft. alles auf der linken Seite versucht. Das ist nicht wirklich hilfreich. Es ist unwahrscheinlich, dass Sie tatsächlich jede Möglichkeit ausprobiert haben. Auf der rechten Seite können Sie sehen, dass der Benutzer die verschiedenen Variationen einschließlich eines Punktformats im ungeraden Stil ausprobiert die verschiedenen Variationen einschließlich hat, aber nichts hat für sie funktioniert. Als Nächstes geben Sie die beste Vermutung , was das Problem sein könnte. Dies hilft der Person , die Ihnen hilft nicht nur zu wissen, was Sie denken, sondern auch zu wissen, dass Sie selbst etwas nachgedacht haben . Sie sind nicht nur auf die erste Hürde gefallen und haben das Problem für jemand anderen geworfen. Auf der linken Seite haben wir ein schlechtes Beispiel. Keine Ahnung was los ist. Und auf der rechten Seite kann ich die Formatierung mit alten Formatierungen funktionieren lassen , aber ich kann nicht sehen, wo die neue Variable in einen neuen Stil eingefügt werden soll . Dies ist klar und prägnant und wird hoffentlich jeden , der versucht, die Frage in die richtige Richtung zu beantworten , jemanden zu finden , der wirklich gut weiß, wie man f-Strings benutzt. D steht für Demo. Demo ist das, was passiert. Fügen Sie die Codetraceback-Fehlermeldung oder eine Erklärung der guten Schritte ein, die Sie auszuführen versucht haben und die zu dem Fehler geführt haben. Auf diese Weise muss die Person, die hilft, nicht versuchen, das Problem neu zu erstellen, einschließlich des gesamten relevanten Codes, der wirklich wichtig ist. Man sieht ziemlich oft, wo Menschen helfen können, weil sie keine halbe Stunde damit verbringen wollen herauszufinden , was jemand getan hat. Sie möchten in der Lage sein, den Code zu kopieren, ihn selbst auszuführen, oder versuchen Sie einfach, sich den Code anzusehen. Es wird der richtigen Person sagen können, was los ist. Hier auf der linken Seite das schlechte Beispiel, überhaupt kein Code. Auf der rechten Seite. Ein gutes Beispiel. Die Variable wurde festgelegt. Sie verwenden alte Formatierungen und es heißt, dass dies funktioniert, aber es ist keine F-Zeichenfolge. Dies sollte ziemlich schnell eine gute Antwort liefern. Wenn Sie alle Informationen zusammenstellen, um die Frage an eine andere Person zu stellen, wird Ihnen die Antwort oft zusammenstellen, um die Frage an eine andere Person zu stellen, offensichtlich, weil Sie alle Informationen auf eine Weise abgeben , die Sie zuvor noch nie gesehen neue Ideen können zu dir kommen. Infolgedessen werden Sie möglicherweise feststellen, dass es etwas gibt, das Sie noch nicht ausprobiert haben, oder dass es etwas gibt , das Sie nicht sofort versucht haben. Danke fürs Zuschauen und wir sehen uns in der folgenden Vorlesung. 4. EINFÜHRUNG – Herunterladen und Installieren von Python 3 (2024): Hallo zusammen und willkommen bei der Einrichtung des Python-Bereichs. Mein Name ist Andreas und ich werde dein Führer sein. In diesem Abschnitt erfahren Sie, wie Python auf drei der beliebtesten Betriebssysteme Windows, macOS und Ubuntu Linux herunterladen und installieren auf drei der beliebtesten Betriebssysteme Windows, . Sie erfahren auch, wie Sie Idle, die integrierte Entwicklungs - und Lernumgebung von Python, betreiben . Einrichten eines Python ist der erste Schritt, um ein Python-Programmierer zu werden Auf vielen Betriebssystemen, einschließlich macOS und Linux, ist Python vorinstalliert. Die Version von Python , die mit Ihrem Betriebssystem geliefert wird, wird System-Python genannt. Das System Python wird von Ihrem Betriebssystem verwendet und ist in der Regel veraltet. Es ist wichtig, dass Sie über die neueste Version von Python verfügen , damit Sie alle Beispiele in diesem Kurs erfolgreich verfolgen können erfolgreich verfolgen . Wichtig. Versuchen Sie nicht, das System Python zu deinstallieren. Die drei Betriebssysteme in diesem Kurs behandelt werden, gehören den beliebtesten Betriebssystemen für PCs. Aber wenn Sie nur Zugriff auf so etwas wie ein Android haben. Beginnen wir also damit Python auf Ihrem Computer einzurichten. Wir sehen uns in der nächsten Lektion. 5. Herunterladen und Installieren von Python 3 (Windows): In diesem Video erfahren Sie, wie Sie Python unter Windows einrichten. Sie erfahren, wo Sie Python herunterladen, wie Sie Python installieren und wie Sie die integrierte Entwicklungs- und Lernumgebung, auch bekannt als Idle, öffnen Entwicklungs- und Lernumgebung . Es gibt zwei Möglichkeiten, Python unter Windows herunterzuladen. Eine davon ist die offizielle Python-Distribution auf der Website python.org veröffentlicht wurde Die zweite erfolgt über den Windows Appstore. Die Windows App Store-Version von Python eignet sich hervorragend für Schüler und Bildungszwecke, weist jedoch einige Einschränkungen auf, die die Python.org-Distribution nicht In diesem Kurs laden Sie die offizielle Python-Distribution von python.org Ordnung. Öffnen wir zunächst Ihren bevorzugten Internetbrowser. Navigiere dann zu python.org. Oben auf der Website, in der Hauptnavigationsleiste, befindet sich die Schaltfläche Downloads Wenn Sie mit der Maus darüber fahren, wird eine Schaltfläche zum Herunterladen der neuesten Version von Python für Windows angezeigt Herunterladen der neuesten Version von Python für Windows Zum Zeitpunkt dieser Aufnahme ist diese Version Python 3.12 0.5 Klicken Sie auf die Schaltfläche , um Python herunterzuladen. Wenn Python mit dem Herunterladen fertig ist, können Sie unten in Ihrem Browser auf die EXE-Datei klicken oder den Datei-Explorer verwenden , um zum Download-Ordner zu navigieren , um sie von dort aus zu öffnen. Auf dem ersten Bildschirm des Installers können Sie sehen, dass Sie Python 3.12 0.5 oder die Version, die Sie herunterladen, installieren 0.5 oder die Version, die Sie herunterladen Es gibt eine Schaltfläche Jetzt installieren , mit der Python sowie Idle PIP und die Python-Dokumentation installiert werden Idle PIP und die Python-Dokumentation Es gibt eine benutzerdefinierte Installationsschaltfläche. Sie können den Speicherort der Installation auswählen und verschiedene Funktionen auswählen oder abwählen Es gibt eine Option, den Launcher für alle Benutzer zu installieren , was empfohlen wird Und wir werden in diesem Abschnitt weiter eingecheckt bleiben, ebenso wie die Option, Python 3.12 0.5 zu Path hinzuzufügen Lassen Sie uns ein wenig darüber sprechen, was das bedeutet. Bevor wir entscheiden, ob Sie Python zu Path hinzufügen sollten oder nicht, lassen Sie uns darüber sprechen, was Pfad ist. Path ist eine Umgebungsvariable unter Windows, die der Befehlszeile mitteilt, wo nach Dateien und Ordnern gesucht werden soll. Wenn Sie nun nicht wissen, was eine Umgebungsvariable oder die Befehlszeile ist, ist das in Ordnung. Die wichtigste Erkenntnis ist, dass Path dem Betriebssystem mitteilt , wo es nach Dingen suchen soll , wenn Sie Befehle ausgeben Python zu Ihrem Pfad hinzufügen, können Sie den Python-Befehl in einem Terminal verwenden , um Python-Programme auszuführen. Nochmals, wenn das für Sie keinen Sinn ergibt, ist das in Ordnung. Also solltest du Python zu Paths hinzufügen. Wenn Sie nur eine Version von Python installiert haben, können Sie Python in beiden Fällen sicher zu Path hinzufügen. Wenn Sie mehrere Versionen von Python auf demselben Computer installieren müssen , ist es am besten, Python nicht zu Path hinzuzufügen. In beiden Fällen können Sie anstelle des Python-Befehls den Python-Launcher für Windows verwenden , um Python-Programme auszuführen . In diesem Kurs verwenden wir die integrierte Entwicklungs - und Lernumgebung oder Idol anstelle des Python-Befehls In diesem Kurs wird davon ausgegangen, dass Sie Python zum ersten Mal installieren und wir nur eine Version von Python auf Ihrem Computer installiert haben . Auch wenn wir den Python-Befehl in diesem Kurs nicht verwenden werden , ist es hilfreich, ihn später verfügbar zu haben. Sie werden also sehen, dass Python mit der ausgewählten Option Python zum Pfad hinzufügen installiert ist. Kehren wir zur Installation zurück. Wenn Sie Python zum ersten Mal installieren und nur eine Version von Python installieren möchten, wählen Sie Python 3.12 0.5 zu PAT hinzufügen Klicken Sie dann auf Jetzt installieren. Wenn Sie Ihrem Computer die Erlaubnis geben müssen , Änderungen an Ihrem Gerät vorzunehmen, fahren Sie fort und tun Sie dies. Dann klicken Sie auf. Auf den meisten Computern dauert die Installation von Python nur ein paar Minuten. Sobald Python die Installation abgeschlossen hat, wird ein Bildschirm angezeigt, der besagt , dass das Setup erfolgreich war. Dieser Bildschirm enthält Links zum offiziellen Online-Tutorial und zur Python-Dokumentation. Fahren Sie fort und klicken Sie auf die Schaltfläche Schließen. In Ordnung. Jetzt hast du Python installiert, aber wie greifst du darauf zu? In diesem Kurs verwenden wir integrierte Entwicklungs - und Lernumgebung von Python oder Idle, um mit Python zu interagieren. Es gibt zwei Möglichkeiten, Idle zu öffnen. Eine Möglichkeit ist das Startmenü. Die andere erfolgt über die Windows-Suchleiste. Um Idle über das Startmenü zu öffnen, klicken Sie auf das Startmenüsymbol und scrollen Sie dann nach unten. Oder klicken Sie auf Alle Apps, bis Sie den Ordner Python 3.12 0.5 finden den Ordner Python 3.12 0.5 Ich habe die Windows 11-Version installiert. Innerhalb des Ordners befindet sich eine Anwendung namens Idle. Klicken Sie darauf, um Idle zu öffnen. Dadurch wird die Idle-Shell geöffnet. Oben im Fenster sehen Sie, welche Version von Python läuft, sowie einige Informationen zu Ihrem Betriebssystem. Unter diesen Informationen befinden sich drei rote spitze Klammern. Diese werden als Eingabeaufforderung bezeichnet. Wann immer Sie das sehen, bedeutet das, dass Python darauf wartet, dass Sie ihm einige Anweisungen geben. Fahren Sie jetzt fort und schließen Sie Idle. Um Idle über die Windows-Suchleiste zu öffnen, geben Sie zunächst Idle in die Suchleiste ein. Im App-Bereich siehst du eine Option für Idle mit der Aufschrift Python 3.12 0.5 64 bit Es könnte 32 Bit heißen, wenn Sie eine 32-Bit-Version von Python für Ihr System heruntergeladen haben . Klicken Sie darauf, um Idle zu öffnen. Da hast du es also. Jetzt wissen Sie, wo Sie Python herunterladen, wie Sie es installieren und wie Sie die integrierte Entwicklungs- und Lernumgebung von Python öffnen können. Wenn Sie wissen möchten, wie Python auf anderen Betriebssystemen wie macOS und Linux installiert wird, schauen Sie sich die nächsten beiden Lektionen dieses Kurses an. 6. Verwenden der Python Shell 2024: Hallo zusammen. Das ist Andreas, und es ist ein aufregender Tag, da wir unseren ersten Befehl in Python schreiben werden. In dieser Vorlesung lernen wir, wie Sie das Idle-Programm verwenden , Lieferumfang unseres Python-Interpreters Wir werden unseren Code mit dem Idle-Programm schreiben, also starten wir es zuerst Sie können danach suchen, indem Sie Idle in das Suchfeld eingeben. Sobald es gefunden wurde, klicken Sie auf das Idol oder die Python-GUI, um es zu starten Die Python-Shell erscheint auf unserem Bildschirm. Eine Shell ist ein Programm, mit dem Sie Anweisungen in den Computer eingeben können , ähnlich wie das Terminal oder die Befehlszeile unter OSX bzw. Windows. Wir können jeweils einen Befehl eingeben. Die Shell wartet auf einen Befehl und darauf, dass der Benutzer ihn ausführt, und gibt dann das Ergebnis der Ausführung zurück Danach wartet die Shell auf den nächsten Befehl. Die Zeilen beginnen mit drei Symbolen, die größer als sind. Lassen Sie uns einige Beispiele machen. Geben Sie fünf plus zehn ein, drücken Sie die Eingabetaste. Die Shell kehrt zur Antwort 15 zurück. Geben Sie nun fünf mehr als eins ein. Sie fragen die Shell, ob fünf größer als eins ist. Die Shell antwortet mit „Wahr“. Die Shell ist also dafür geeignet , jeweils einen Befehl auszuführen. Es ist ein sehr praktisches Tool zum Senden von Python-Befehlen, insbesondere wenn wir anfangen, mit der Sprache zu beginnen Wenn Sie jedoch die Python-Shell verlassen und erneut eingeben, alle Befehle, die Sie eingeben, weg. Außerdem können Sie die Python-Shell nicht verwenden , um ein eigentliches Programm zu erstellen, aber wenn Sie ein ganzes Programm schreiben möchten, ist die Antwort der Dateieditor. Um ein einfaches Programm zu programmieren, müssen Sie den Code in eine Textdatei schreiben und ihn mit einer Punkt-PY-Erweiterung speichern. Diese Datei wird als Python-Skript bezeichnet. Sie können den Dateieditor Datei und dann über Neue Datei aufrufen. Er ähnelt einem Texteditor und ermöglicht es Ihnen, manuelle Anweisungen einzugeben, die Datei zu speichern und das Programm auszuführen. Denken Sie daran, dass das interaktive Shell-Fenster immer das Fenster mit der Aufforderung Drei größer als ist. Stattdessen wird diese Aufforderung im Fenster des Dateieditors nicht angezeigt. In der nächsten Vorlesung werden wir mehr über Ihre Programmierumgebung erfahren. 7. Einrichten von Python (Zusammenfassung) 2024: Herzlichen Glückwunsch. Sie haben jetzt Python auf Ihrem Computer installiert. Lassen Sie uns kurz alles, was Sie gelernt haben, noch einmal zusammenfassen. In diesem Abschnitt haben Sie erfahren, wo Sie Python unter Windows und macOS herunterladen können. So installieren Sie Python mit den offiziellen Installationsprogrammen unter Windows und macOS oder dem AppdPackage-Manager unter Sie haben auch gelernt, Idle, die integrierte Entwicklungs- und Lernumgebung von Python, zu öffnen integrierte Entwicklungs- und Lernumgebung von Python Also, wo wirst du von hier aus hingehen? Nun, Sie sind bereit, mit dem Programmieren in Python zu beginnen. Sie verwenden Idle, um mit Python zu interagieren und Python-Programme zu schreiben und auszuführen. Aber Idle ist nicht deine einzige Option. Vielleicht möchten Sie sich mit Einrichtung eines anderen Editors befassen. Um Ihnen dabei zu helfen, werde ich Ihnen in der nächsten Lektion einen alternativen Python-Editor, VS-Code oder Visual Studio-Code zeigen . Es ist also eine großartige Alternative zum ursprünglichen Python Idol. Ich wünsche dir alles Gute auf deiner Python-Reise und wir sehen uns. 8. Code-Editoren 2024: Wenn es darum geht, Python-Code einzugeben, haben Sie zwei Möglichkeiten. Sie können einen Code-Editor oder eine IDE verwenden, was für integrierte Entwicklungsumgebung steht. Eine IDE ist im Grunde ein Code-Editor mit einigen ausgefallenen Funktionen wie der automatischen Vervollständigung , also während Sie Code eingeben. Diese Funktion hilft Ihnen, Ihren Code zu vervollständigen, sodass Sie nicht jedes Zeichen von Hand eingeben müssen. Es ist eine produktivitätssteigernde Funktion. Es bietet Ihnen auch zusätzliche Funktionen wie Debugging, was bedeutet, Fehler in Ihren Programmen zu finden und zu beheben , zu testen usw. Sowohl für Code-Editoren als auch für IDEs gibt es so viele Optionen Die beliebtesten Code-Editoren sind VS Code, Adam und Sublime Sie können den Code-Editor verwenden, den Sie bevorzugen. in Bezug auf die IDEs Auch in Bezug auf die IDEs gibt es so viele Optionen. Der beliebteste ist Pi Harm. In diesem Kurs werde ich die offizielle Python-Distribution oder Idol verwenden die offizielle Python-Distribution oder , wie wir es in den vorherigen Lektionen besprochen haben In einigen Übungen werde ich aber auch den VS-Code oder Visual Studio-Code verwenden , weil das mein Lieblings-Code-Editor ist Später im Kurs werde ich Ihnen zeigen, wie Sie ein Plugin oder eine Erweiterung installieren , die VS-Code in eine leistungsstarke IDE konvertiert. Bevor Sie also weitermachen, gehen Sie zu code.visualstudio.com und laden Sie die neueste Version von VS Code herunter 9. Schreiben deines ersten Python-Programms – Einführung 2024: Hallo zusammen und willkommen in diesem neuen Bereich. Im ersten Abschnitt ging es darum, Python auf Ihrem Computer zu installieren. Und jetzt, wo Sie es installiert haben, ist es Zeit, mit dem Codieren zu beginnen. In diesem Abschnitt schreiben Sie Ihr erstes Python-Skript. Sie erfahren, was passiert, wenn Sie Skripte mit einem Fehler ausführen, und Sie werden lernen, Variablen zu deklarieren und ihren Wert zu überprüfen. Sie werden auch viel darüber lernen, wie man Kommentare schreibt. Im Laufe der Zeit wirst du auch die Unterschiede zwischen den sogenannten interaktiven Fenstern und den Skriptfenstern in Idol kennenlernen sogenannten interaktiven Fenstern und den Skriptfenstern in Idol Sie werden etwas über den Red Evaluate Print Loop, REPL, erfahren. Und Sie werden nicht nur Skripte erstellen, sondern auch lernen, wie man sie ausführt. Sie lernen einen sehr wichtigen Operator kennen den Zuweisungsoperator. Was sind die Regeln für die Erstellung von Variablennamen und was wird als gültig oder ungültig angesehen? Darüber hinaus lernen Sie einige der Standards kennen, die in PEP 8 beschrieben sind Es ist also an der Zeit, dass Sie mit dem Schreiben Ihres ersten Python-Skripts beginnen . 10. Schreiben unseres ersten Python-Programms 2024: Okay, es ist Zeit, mit dem Schreiben Ihres Python-Skripts zu beginnen. Sie werden ein Programm verwenden , das mit Ihrer Python-Installation geliefert wird. Es heißt Idle, was für integrierte Entwicklung in einer Lernumgebung steht . Es hat zwei Hauptfenster, in denen Sie einige Zeit verbringen werden. Das erste Fenster heißt interaktives Fenster, und ich werde es gleich vorstellen. Dann das Editorfenster, in dem Sie Skripte und Programme schreiben , die Sie speichern und später ausführen werden. Sie können Code sowohl in das interaktive Fenster als auch in das Editorfenster eingeben . Der Unterschied zwischen den beiden Fenstern besteht darin, wie sie Code ausführen. Ordnung. Schauen wir uns das interaktive Fenster an. Wenn Sie Idle noch nicht geöffnet haben, öffnen Sie es. Sie finden es in dem Ordner, in dem die Anwendung installiert wurde. In meinem Fall wähle ich Python 3.12 und klicke auf die Idle App Das interaktive Fenster von Idls enthält die Python-Shell. Sie können diesen Namen hier oben sehen, Idle Shell. Es ist eine texturierte Benutzeroberfläche zur Interaktion mit der Python-Sprache verwendet wird Sie können ein bisschen Python-Code in das interaktive Fenster eingeben und Eingabetaste drücken, um das Ergebnis sofort zu sehen. Daher der Name interaktiv. Wenn das Fenster geöffnet wird, wird am Anfang derselbe Text angezeigt. Der Text zeigt die Version von Python, die Idle ausführt, und einige der Befehle, mit denen Sie Hilfe oder Informationen zu Python abrufen können . Diese Stelle hier, das wird als Prompt bezeichnet, und hier können Sie Code eingeben. also direkt vor dieser Cursor-Eingabeaufforderung fort und geben Sie eins plus eins ein und drücken Sie dann die Eingabetaste. Und Sie können sehen, dass es zwei ausgibt. Python wertet den Ausdruck eins plus eins aus und zeigt zwei an, und dann zeigt es eine weitere Eingabeaufforderung direkt darunter an Jedes Mal, wenn Sie Code in einem interaktiven Fenster ausführen, eine neue Eingabeaufforderung erscheint eine neue Eingabeaufforderung direkt unter dem Ergebnis Wenn Sie das interaktive Fenster verwenden, funktioniert es wie eine Schleife und umfasst diese drei verschiedenen Schritte. Erstens liest Python den Code , den Sie an der Eingabeaufforderung eingegeben haben. Das ist wieder die Sache mit den drei verschiedenen, etwas mehr als Symbolen. Zweitens wertet es den Code aus. Drittens druckt Python das Ergebnis und wartet auf weitere Eingaben. Dies wird als Red Evaluation Print Loop bezeichnet. Wir werden normalerweise als REPL abgekürzt. REPL, Python-Programmierer bezeichnen dies normalerweise als Python-Shell, als Python-REPL oder kurz Repel. Okay, versuchen wir etwas Interessanteres als nur Zahlen zu addieren Ein Übergangsritus für jeden Programmierer ist das Schreiben eines Programms , das die Phrase „ Hallo, Welt“ auf dem Bildschirm druckt Hallo, Welt“ auf dem Bildschirm Geben Sie an der Eingabeaufforderung print ein, und dann können Sie hier eine Reihe von Klammern erstellen Also öffne ich Klammern, und Sie können sehen, dass mir das hier ein paar zusätzliche Anweisungen gibt , was ziemlich nett ist Und wir werden im Laufe des Kurses alles über dieses Zeug lernen dieses Zeug In diesem Fall werden wir etwas Text drucken. Also wollen wir Hello World. Und wenn ich die Eingabetaste drücke, können Sie sehen, dass Hello World ausgegeben wird. Dieser Code, den Sie hier eingegeben haben, print, ist eine Funktion Eine Funktion ist Code, der einige Aufgaben ausführt und über seinen Namen aufgerufen werden kann Der obige Code ruft die Druckfunktion mit dem darin enthaltenen Hello World-Text auf oder ruft sie auf und gibt ihn aus Die Klammern weisen Python an, die Druckfunktion aufzurufen. Wenn ich print einfach von selbst eintippe, weiß es nicht, wie ich es nennen möchte Es wird mir einfach davon erzählen. Es sagt mir, dass es eine eingebaute Funktion namens print ist. Um diese Funktion aufzurufen, muss ich die Klammern setzen und ihr dann etwas Wertvolles mitteilen Wie Sie sehen, fordert es mich auf, es dort einzufügen. Und das letzte Mal haben wir dasselbe getippt , also mache ich es Und großartig. Diese Klammern schließen auch alles ein, was an die Funktion gesendet wird und als Eingabe eingegeben wird Und die Anführungszeichen deuten darauf hin, dass Hello World in Wirklichkeit Text ist und nicht etwas anderes, das wir vielleicht drucken möchten In Idol können Sie einige faszinierende Hervorhebungen mit verschiedenen Farben sehen einige faszinierende Hervorhebungen mit verschiedenen Farben mit Mit dem aktuellen Setup, das ich habe, können Sie sehen, dass sich eine Funktion von der Ausgabe unterscheidet, und Sie können sehen, dass etwas, das in Anführungszeichen steht, anders aussieht als beispielsweise diese Zahlen hier Standardmäßig sind Funktionen lila und Text grün hervorgehoben. Dieses interaktive Fenster ist wirklich nützlich, um kleine Codebeispiele auszuprobieren und die Python-Sprache zu erkunden, aber es hat eine große Einschränkung. Sie müssen den Code eine Zeile nach der anderen eingeben. Alternativ können Sie Python-Code in der Textdatei speichern und gesamten Code ausführen, um ein ganzes Programm auszuführen. Darauf werden wir mithilfe des Editorfensters umsteigen . Sie schreiben Ihre eigenen Python-Dateien mit dem Idols Editor Window. Sie können das Editor-Fenster öffnen, indem Sie im Menü oben im interaktiven Fenster Datei und Neue Datei im Menü oben im auswählen. Lass mich dir das zeigen. Das interaktive Fenster bleibt geöffnet, wenn Sie das Editorfenster öffnen. Es zeigt die durch den Code generierte Ausgabe im Editorfenster an. Sie sollten also die beiden Fenster so anordnen , dass Sie sie beide gleichzeitig sehen können . im Editorfenster Geben Sie im Editorfenster denselben Code ein, mit dem Sie Hello World im interaktiven Fenster drucken. Beachten Sie, dass Idle Code, der in das Editorfenster eingegeben wurde, genauso hervorhebt wie im interaktiven Fenster. Sie müssen die Eingabeaufforderung nicht wie im interaktiven Fenster hinzufügen nicht wie im interaktiven Fenster Sie ist nicht erforderlich. Bevor Sie das Programm ausführen können, müssen Sie es speichern. Wählen Sie also Datei und Speichern aus dem Menü und speichern Sie die Datei unter dem Namen Helloworld Dot PY Auf einigen Systemen wird ein Standardverzeichnis verwendet, in dem Python installiert ist Derselbe Ort wie Idle. Stellen Sie sicher, dass Sie Ihre Dateien nicht in diesem Verzeichnis speichern . Speichern Sie sie stattdessen auf Ihrem Desktop oder in einem Ordner im Home-Verzeichnis Ihres Benutzers. Ich habe auf meinem Desktop einen Ordner namens Python erstellt und werde die Datei dort speichern. Die Punkterweiterung PY gibt an, dass die Datei Python-Code enthält. Tatsächlich wird beim Speichern Ihrer Datei mit einer anderen Erweiterung die Codehervorhebung entfernt. IDL hebt Python-Code nur hervor , wenn er in einer Punkt-PY-Datei gespeichert ist Um das Programm auszuführen, können Sie im Pulldown-Menü die Option Ausführen auswählen und das Modul ausführen Möglicherweise stellen Sie auch fest, dass einige der Tastenbefehle hier hervorgehoben sind. In diesem Fall ist es die Funktionstaste fünf. Das Programm wird also im interaktiven Fenster ausgegeben. Sie werden den Neustart und dann das Verzeichnis und den gleichen Namen der Datei sehen den gleichen Namen der Datei , die ausgeführt und ausgegeben wird. Idle startet den Python-Interpreter jedes Mal neu. Dabei es sich um das Computerprogramm, das Ihren Code tatsächlich ausführt, wenn Sie eine Datei ausführen Dadurch wird sichergestellt, dass die Programme jedes Mal auf dieselbe Weise ausgeführt werden auf dieselbe Weise ausgeführt Wenn Sie eine Datei öffnen möchten, können Sie zu Datei und Öffnen gehen. Und in meinem Fall öffne ich erneut die Datei, die wir gerade in meinem Python-Ordner und helloworld dot py gespeichert meinem Python-Ordner und helloworld Sie können eine Datei auch über den Dateimanager wie den Windows Explorer oder den Mac OS Finder öffnen, wie den Windows Explorer oder indem Sie mit der rechten Maustaste darauf klicken und „Öffnen mit“ sagen Ordnung. Du hast dein erstes Programm gemacht. Als Nächstes ist es an der Zeit, einige Fehler zu machen. 11. Lass uns einige Fehler machen 2024: Okay, es ist Zeit, ein paar Fehler zu machen. Es ist wirklich schwierig, beim Programmieren keine Fehler zu machen. Und falls du es noch nicht so weit geschafft hast, werde ich weitermachen und dich üben lassen, ein paar davon zu machen , nur um eine Vorstellung davon zu bekommen, was passiert. Der erste Typ, der bei Ihnen auftreten wird , wird als Syntaxfehler bezeichnet. Und der Syntaxfehler tritt auf, wenn Sie Code schreiben, der in der Python-Sprache nicht zulässig ist. Die Sprache versteht nicht, was Sie versuchen zu tun. Ich werde Sie bitten, einen Fehler in dem Code zu erstellen , den Sie bereits geschrieben haben. Es ist Übung , diesen Syntaxfehler zu erzeugen. Ich möchte, dass du deine Hello Underscorworld Dot Py-Datei erneut öffnest deine Hello Underscorworld Dot Und am Ende entfernen Sie das zweite Anführungszeichen entfernen Sie das zweite Anführungszeichen Es beginnt also mit einem Anführungszeichen und dann Hallo Welt, aber es gibt dort keins, das das Zitat schließt. Wenn Sie das speichern und dann die Taste F 5 ausführen oder drücken, erhalten Sie hier etwas Neues, bei dem es heißt , dass in Zeile eins ein unbestimmtes Zeichenkettenliteral erkannt wurde Je nachdem, welche Version von Python Sie haben, kann sich diese Meldung ändern. Python 3.12 hat viele weitere explizite Erklärungen von Fehlern hinzugefügt , was wirklich nett ist Und du wirst im Laufe des Kurses noch mehr davon sehen , wenn wir weitermachen Aber was Sie in einer früheren Version davon sehen könnten , ist eine Aussage , die EOL sagt, und EOL steht für End of Line In diesem Fall wurde sie neu formatiert und sagt etwas Was ist also ein String-Literal? Nun, ein String-Literal haben Sie hier erstellt. In diesem Fall haben Sie es jedoch nicht geschlossen oder mit dem zusätzlichen Anführungszeichen beendet Um ein Zeichenkettenliteral zu erstellen, müssen Sie den gewünschten Text in beide Anführungszeichen einschließen gewünschten Text in beide Anführungszeichen einschließen Es kann entweder ein doppeltes Anführungszeichen oder ein einfaches Anführungszeichen sein, und Sie werden in einem kommenden Kurs über Zeichenketten viel Zeit damit verbringen einem kommenden Kurs über Um diesen Syntaxfehler zu beheben, müssten Sie den anderen Teil hinzufügen und speichern. Und dann kann es ausgeführt und ausgedruckt werden. Das wird also als Syntaxfehler angesehen. Die andere Art von Fehler , die bei der Programmierung auftreten werden , wird als Laufzeitfehler bezeichnet. Idle fängt Syntaxfehler bevor das Programm überhaupt gestartet wird Im Gegensatz dazu treten Laufzeitfehler nur auf, während ein Programm läuft Wenn ein Fehler auftritt, beendet Python die Ausführung des Programms und zeigt dann mehrere Textzeilen an, die als Trace-Back bezeichnet werden , und es werden eine Reihe nützlicher Informationen über den Fehler angezeigt. Das Interessante daran ist, dass es am besten ist, sie von unten nach oben zu lesen. Ich lasse Sie zurück in Ihre Datei gehen , und dieses Mal werden Sie einen Laufzeitfehler erzeugen, und dann können Sie den Unterschied zwischen den beiden erkennen. Um einen Laufzeitfehler zu erzeugen, versuchen Sie es stattdessen wie folgt. Entfernen Sie beide Anführungszeichen. Haben Sie bemerkt, dass sich die Textfarbe zu Schwarz ändert , wenn Sie die Anführungszeichen entfernen? Idle erkennt Hello World nicht mehr als Text. Was hier also passieren wird, ist, dass dies ein gültiger Code ist. Es versteht seine Syntax, aber es wird etwas anderes passieren. Mach weiter und speichere das, und wenn du es ausführst, wirst du sehen, dass das passiert. Das wird also als Laufzeitfehler bezeichnet. Und nochmal, um den Trace zurückzulesen, diese Sache passiert hier. Es ist am besten, es von unten nach oben zu lesen. Es heißt also sofort, das ist ein Namensfehler. Es gibt einen Namen oder etwas, von dem Sie fordern , dass es gedruckt wird. Es heißt Hello und ist nicht definiert. Es weiß nicht, weißt du, was Hallo ist oder worauf es sich bezieht. Es ist gültig, soweit es die Syntax angeht, die Art und Weise, wie es geschrieben ist, aber Hallo existiert nicht Es wurde also noch nicht definiert. Und das werden Sie in der nächsten Lektion tun, nämlich zu lernen, wie man Variablen definiert. Und wenn es so weitergehen würde, hätte es tatsächlich dasselbe Problem mit der Welt. Auch hier können Sie von unten nach oben lesen. Es ist also ein Namensfehler. Der Name Hello ist nicht definiert, und dann zeigt es Ihnen die Aussage, in der das passiert. Und dann geht es hier tatsächlich etwas weiter oben. Das ist die Datei, aus der es liest. Manchmal haben Python-Projekte mehrere Dateien, und der Trace-Back kann zu einer anderen Datei führen. In diesem Fall heißt es also, Okay, wo Sie das im Namen der Datei gespeichert haben, und das sagt Ihnen tatsächlich, um welche Zeile es sich handelt. Auch hier werden Sie keine so einfachen Programme haben. Dieser ist nur eine einzige Zeile. Es ist also ziemlich einfach , wo das Problem liegt. Aber so funktioniert Traceback, und Sie können sie im Laufe der Zeit viel mehr üben . Verstehen Sie also den Unterschied zwischen einem Laufzeitfehler und einem Syntaxfehler Großartig. Im Falle eines Syntaxfehlers können Sie ihn nicht einmal ausführen, da er nicht wie ein normaler Python-Code aussieht. Es folgt nicht der richtigen Syntax. In diesem Fall handelt es sich um einen völlig anderen Fehler, einen völlig anderen Fehler bei dem alles durchgelesen wurde, aber als es ausgeführt wurde, konnte es nicht feststellen, dass Hello irgendwo definiert war. Okay, es ist Zeit, selbst ein bisschen zu üben. als kleine Übersicht, ein Programm zu schreiben, Versuchen Sie als kleine Übersicht, ein Programm zu schreiben, das in Idle nicht ausgeführt werden kann, weil es einen Syntaxfehler hat. Schreiben Sie dann ein anderes Programm, das nur abstürzt, wenn es läuft, weil es einen Laufzeitfehler hat. Sie finden die Lösungsdatei in dieser Lektion in Ihren Ressourcen. Okay. Als Nächstes lernst du alles über das Erstellen von Variablen. 12. Erstellen einer Variablen 2024: Nachdem Sie sich in der letzten Lektion kurz mit Variablen befasst haben , ist es an der Zeit, sich eingehender mit ihnen zu befassen. In Python-Variablen oder -Namen kann ihm ein Wert zugewiesen und dann später im gesamten Code verwendet werden , um darauf zu verweisen. Und das ist die wirklich entscheidende Idee einer Variablen, dass Sie ihr einen Wert zuweisen und ihr einen Wert geben können. Aber wenn Sie später im Programm auf diesen Wert verweisen möchten , können Sie den Namen der Variablen aufrufen und ihn erneut verwenden oder ihr möglicherweise einen anderen Wert geben . Variablen sind für die Programmierung von grundlegender Bedeutung, und dafür gibt es zwei Hauptgründe. Erstens bleiben die Werte , die Sie in Ihr Programm aufnehmen möchten , zugänglich. Sie können beispielsweise das Ergebnis einer zeitaufwändigen Operation oder eines Ausdrucks einer Variablen zuweisen zeitaufwändigen Operation oder eines Ausdrucks , sodass Ihr Programm die Operation nicht jedes Mal ausführt , wenn Sie das Ergebnis verwenden müssen. Es kann einfach direkt aus der Variablen auf den Wert zugreifen. Der andere Grund ist, dass Variablen Ihnen Kontext geben können. Wenn Sie die Zahl 20 haben, kann das verschiedene Dinge bedeuten. Es könnte die Anzahl der Schüler im Unterricht bedeuten. Es könnte die Häufigkeit sein , mit der jemand auf eine Website zugegriffen hat oder irgendwohin gegangen ist und so weiter. Wenn Sie dem Wert 20 einen Namen wie eine Anzahl von Schülern geben , wird die Bedeutung dieses Werts deutlich. In dieser Lektion lernen Sie, wie Sie Variablen in Ihrem Code verwenden und welche Regeln und Stilrichtlinien dahinter stehen. Um dorthin zu gelangen, müssen Sie jedoch etwas über den sogenannten Zuweisungsoperator lernen, um eine Variable zu erstellen müssen Sie jedoch etwas über den sogenannten Zuweisungsoperator lernen, um . Fangen wir also mit dem zweiten Wortoperator an. Ein Operator ist ein Symbol wie Plus oder Minus , das eine Operation mit einem oder mehreren Werten ausführt. Sie haben zuvor eins von zwei plus zwei verwendet, und in diesem Fall führt es eine Addition durch. Wenn es zwei minus zwei wäre, würde es eine Subtraktion durchführen Bei der Zuweisung werden Variablennamen Werte mithilfe eines speziellen Symbols zugewiesen, werden Variablennamen Werte mithilfe eines speziellen Symbols zugewiesen der als Zuweisungsoperator bezeichnet wird handelt es sich um ein einzelnes Gleichheitszeichen Und das kann ein wenig verwirrend sein. Sie werden mehr darüber erfahren, wie dieser Zuweisungsoperator funktioniert und warum nicht unbedingt zwei Dinge miteinander vergleicht und sagt, dass sie einander gleich sind. Es gibt tatsächlich den Wert und weist ihn dem Namen dieser Variablen zu Der Operator nimmt den Wert , der sich auf der rechten Seite des Operators befindet, und weist ihn dem Namen auf der linken Seite zu Lassen Sie mich das im interaktiven Fenster ansehen. Geben Sie das ein. Wenn Sie eine Variable erstellen wollen, lautet ihr Name Salutation Um ihr einen Wert zuzuweisen, verwenden Sie das Gleichheitszeichen, den Zuweisungsoperator Sie geben ihm das String-Literal von Hello World Wenn Sie print eingeben würden, wählen Sie als Wert, den Variablennamen salutation zu verwenden Sie würden dieselbe Ausgabe erhalten, als ob Sie das Literal selbst „Hello World“ ausgeben würden Literal selbst „Hello World“ ausgeben Wenn Sie nun salutation alleine eingeben würden, würden Sie sehen, dass es dem String-Literal hello world zugewiesen würde dem String-Literal hello world zugewiesen Was wäre, wenn Sie beim Drucken einen Tippfehler machen und die Anrede in Großbuchstaben wählen würden Das ist wieder ein gültiger Code. Es zeigt, dass dies in Bezug auf die Syntax funktioniert. Aber wenn ich die Eingabetaste drücke, können Sie sehen, dass ich einen Laufzeitfehler oder einen Namensfehler habe. Die Namensanrede ist nicht definiert. Und das ist wiederum ein Vorteil von Python, da es Ihnen tatsächlich eine etwas bessere Vorstellung vom Kontext des Geschehens gibt. Und es heißt: Meinten Sie Anrede ? Weil es hier eine Variable namens Anrede gibt, was wirklich nett ist Das ist ein Update. Möglicherweise sehen Sie dies in einer früheren Version von Python nicht . Oh ja. Der Fall, den Sie in einem Variablennamen verwenden , ist wichtig, und sie sind völlig unterschiedlich. Sie haben vielleicht in anderen Programmierkontexten gelernt , dass Groß-/Kleinschreibung vielleicht keine Rolle spielt, aber im Fall von Python schon Jetzt gibt es Regeln für gültige Variablen und Namen in Python. Nochmals, um Dinge wie Syntaxfehler zu vermeiden. Variablennamen können Groß- und Kleinbuchstaben enthalten und Kleinbuchstaben Alle davon sind in Ordnung. Es kann Ziffern enthalten. Es kann Unterstriche enthalten. Und der einzige Trick ist jedoch, dass es nicht mit einer Zahl beginnen kann, nicht mit einer Ziffer beginnen Lassen Sie mich Ihnen ein paar Beispiele geben. Ein gültiger Python-Name könnte also eine Zeichenfolge eins oder ein Unterstrich A eins S vier oder eine Liste mit Unterstrichen von Städten Einige der Dinge , die nicht gültig wären, würden mit einer Zahl beginnen Also fünf Kabel oder 65 Touren. Also behalte das einfach im Hinterkopf. Sie können nicht mit einer Zahl beginnen, Sie können mit einer Ziffer beginnen. Okay? Großartig. Zusätzlich zu den alphabetischen Zeichen, über die wir gerade gesprochen haben, und den Ziffern im Unterstrich können Python-Variablennamen Unicode-Zeichen enthalten Unicode ist, falls Sie damit nicht vertraut sind, ein Standard für die digitale Darstellung von Zeichen, und sie werden in den meisten Schriftsystemen der Welt verwendet Lassen Sie mich Ihnen ein paar Beispiele für Dinge geben , die Sie vielleicht gesehen haben. Also verzierte Buchstaben auf Französisch, Spanisch oder Deutsch, wo man E mit einem Akzent drauf hat oder mit einem Umlat, weißt du, verschiedene Dinge , die dekoriert sind Sie können diese Zeichen in chinesischen, japanischen oder arabischen Symbolen verwenden , aber nicht jedes System, auf dem Sie Ihren Code ausführen , kann diese Zeichen anzeigen Es ist also etwas , mit dem Sie vorsichtig sein sollten, und es funktioniert möglicherweise besser, die zu verwenden , die wir etwas früher angegeben haben. einem viel späteren Abschnitt werden Sie viel mehr über Unicode erfahren In einem viel späteren Abschnitt werden Sie viel mehr über Unicode erfahren, aber ich werde auch einige Ressourcen hinzufügen, wenn Sie weitermachen möchten. Es ist schwierig, einen guten Namen für eine Variable zu wählen. Es gibt ein paar Memes , die zeigen, dass jemand wirklich intensiv darüber nachdenkt, wie komme ich auf einen Namen Und es gibt einige Richtlinien , die Sie vielleicht befolgen möchten Die erste, die ich mit Ihnen teilen möchte, ist, dass es viel besser sein kann, die Dinge beschreibend zu halten viel besser sein kann, die Dinge beschreibend , als sie sehr kurz zu halten einer Variablen namens S ist es ziemlich schwierig, Ihre Absicht mit dieser Variablen zu ermitteln , besonders wenn es sich um Sekunden handelt Das könnte viel nützlicher sein oder sogar noch expliziter und aussagekräftiger wären Sekunden pro Stunde Das mag Ihnen so vorkommen, als ob Sie viel tippen würden. Sie werden lernen , dass es viele Tools gibt, wenn Sie mit einem Editor arbeiten Ihnen helfen können , die Namen der Dinge zu vervollständigen , sodass Sie sich nicht viele Gedanken darüber machen müssen , die Dinge sehr knapp und kurz zu halten. Es kann für Sie in Zukunft viel nützlicher sein, einen aussagekräftigen Namen zu haben als nur einen einfachen Kurznamen Die gute Faustregel ist, den Variablennamen vielleicht auf maximal drei oder vier Wörter zu beschränken den Variablennamen vielleicht auf maximal drei oder vier Wörter zu Ordnung. Also habe ich gesagt, du könntest Klein- oder Großbuchstaben verwenden Nun, wo solltest du sie verwenden? Die Hülle, die Sie verwenden sollten kann je nachdem, was Sie tun möchten, variieren, aber es gibt einige Richtlinien. Lassen Sie uns über verschiedene Möglichkeiten sprechen, wie dies getan werden kann. Ein Begriff, der verwendet wird, ist Groß- und Kleinschreibung , bei dem Sie beispielsweise mit Kleinbuchstaben beginnen und dann jedes einzelne Wort, das Sie innerhalb dieses Variablennamens hinzufügen, für den ersten Buchstaben in Großbuchstaben Also hier sind einige Beispiele. Eine Reihe von Studenten könnten also Studenten mit Num Capital sein oder eine Liste von Hauptstädten und so weiter. Also das nennt man gemischte Fälle. Die andere Möglichkeit, dies zu tun, besteht darin, Unterstriche zu verwenden , alles klein zu schreiben und dann zwischen jedem dieser Unterstriche einen Unterstrich zu verwenden Dies wird auch als Schlangenfall bezeichnet. So würden diese Variablen in Schlangenbuchstaben oder Kleinbuchstaben mit Unterstrichen aussehen Schlangenbuchstaben oder Kleinbuchstaben mit Unterstrichen In Python ist es üblicher, Variablennamen in diesem Stil zu schreiben. Es ist nicht verboten, Groß- und Kleinschreibung zu verwenden, aber es entspricht in der Regel eher dem Python-Stil , dies im Allgemeinen zu tun. Tatsächlich gibt es ein ganzes Thema zu diesem Thema, das als PEP 8 bezeichnet wird PEP 8 gilt weithin als offizieller Styleguide für das Schreiben von Python, wie Dinge benannt werden, wie Dinge formatiert werden sollten, wie Dinge aussehen sollten Und du kannst noch viel mehr darüber erfahren, wenn du dir diese Website, pepight.org, ansiehst diese Website, pepight.org, ansiehst Jemand hat diese Seite erstellt, um Ihnen auf ansprechende Weise einen Überblick über alle Funktionen Es gibt mehr Informationen. Ich werde einen Link in die Beschreibung aufnehmen. Wenn Sie die skizzierten Standards einhalten und PEP 8 sicherstellen, dass Ihr Python-Code für die meisten Python-Programmierer lesbar ist Python-Code für die meisten Python-Programmierer lesbar und PEP 8 sicherstellen, dass Ihr Python-Code für die meisten Python-Programmierer lesbar ist und im Stil anderer Python-Benutzer aussieht Der Name PEP steht für Python Enhancement Protocol Ein PEP ist ein Entwurfsdokument. Es wird von der Python-Community verwendet, um neue Funktionen oder Änderungen an der Sprache vorzuschlagen. Wenn Sie mit Variablen arbeiten, ist es schön, die Werte überprüfen zu können, und das können Sie im interaktiven Fenster tun. Um den Wert zu überprüfen, den eine Variable gerade enthält, können Sie den Namen der Variablen selbst an der Eingabeaufforderung eingeben. Wenn Sie den Namen an der Eingabeaufforderung selbst eingeben, wird oft etwas anderes angezeigt als bei der Verwendung von Drucken. Sie können auch herausfinden, um welchen Variablentyp es sich handelt, indem den Namen der Variablen in das Feld Typ eingeben. Lassen Sie mich Ihnen zeigen , wie die aussehen. Nehmen wir an, Sie haben eine Variable von X erstellt und X wird der Wert Zwei zugewiesen. Wenn ich X eintippe und die Variable überprüfe, können Sie sehen, dass ihr Wert zwei ist. Und wenn ich drucken würde, erhalte ich dieselbe Ausgabe. Nun, es könnte etwas anders aussehen, wenn ich sagen würde, weisen Sie Y dem Wert von String-Literal zwei zu Das ist also Text statt eines tatsächlichen numerischen Werts. Wenn ich also Y eintippe, werden Sie feststellen, dass etwas anderes ausgegeben wird, als wenn ich es drucken würde. Das kann also etwas verwirrend sein. Und was Sie lernen werden, ist, dass dies verschiedene Typen sind und dass sie innerhalb von Python unterschiedlich interpretiert werden. Und das ist ein großes Thema , mit dem Sie sich in viel späteren Abschnitten befassen werden. Eine Sache, die Sie überprüfen können, ist, dass Sie Typ sagen können. Sie können hier sehen, dass es nach dem Objekt oder Namen fragt und dann zurückkehrt. Das ist es, was der Pfeil auf den Typ des Objekts hinweist. Und das ist nur eine Vorschau. Also probiere es mit X aus steht, dass es sich um eine Integer-Klasse handelt. Nun, im Gegensatz zum Typ von Y. Y ist die Klasse einer Zeichenfolge, und sie werden unterschiedlich dargestellt, wenn Sie einfach den Namen der Variablen eingeben Und denken Sie daran, dass eine solche Variableninspektion nur in diesem interaktiven Fenster innerhalb einer REPL funktioniert diesem interaktiven Fenster innerhalb einer REPL Versuchen Sie beispielsweise, das folgende Programm vom Editorfenster aus auszuführen das folgende Programm vom Editorfenster aus Nehmen wir an, wir beginnen mit der Definition von Anrede und es heißt, sie entspricht Hello World Und dann geben Sie in der nächsten Zeile einfach Salutation ein. Was wird ausgegeben, wenn Sie dieses Programm ausführen? Wie Sie sehen können, als es ausgeführt wurde, hat es nichts ausgegeben. Diese Art der Überprüfung einer Variablen funktioniert nur hier im interaktiven Fenster. Als Überblick finden Sie hier ein paar Übungen, die Sie im interaktiven Fenster durchführen können. Zeigen Sie Text mithilfe der Druckfunktion an. Sie dann mithilfe des interaktiven Fensters Weisen Sie dann mithilfe des interaktiven Fensters einer Variablen ein String-Literal zu Drucken Sie dann den Inhalt der Variablen mit der Druckfunktion aus Wiederholen Sie diese ersten beiden Übungen indem Sie das Editor-Fenster jetzt mit einer Datei verwenden. Sie finden die Lösungsdatei in der Lektion in Ihren Ressourcen. In Ordnung. Als Nächstes, wie kannst du dir Notizen in deinem Code hinterlassen ? Danke fürs Zuschauen. 13. Kommentare hinzufügen 2024: In dieser Lektion lernen Sie, wie Sie sich selbst hilfreiche Notizen hinterlassen können. Sie werden Kommentare genannt. Programmierer lesen manchmal Code, den sie vor einiger Zeit geschrieben haben , und fragen sich, was das macht? Wenn Sie sich einen Code eine Weile nicht angesehen haben, kann es schwierig sein, sich daran zu erinnern warum Sie ihn so geschrieben haben, wie Sie es getan haben Um dieses Problem zu vermeiden, können Sie Kommentare in Ihrem Code hinterlassen. Kommentare sind Textzeilen, die keinen Einfluss auf die Art und Weise haben , wie das Programm ausgeführt wird. Sie dokumentieren, was der Code macht und warum Sie, der Programmierer, bestimmte Entscheidungen getroffen haben Lassen Sie uns eine vorherige Datei öffnen, Hallo Welt, und lassen Sie uns den Code bearbeiten Alles endete in der ersten Zeile des Codes. Anrede ist gleichbedeutend mit Hallo Welt. Anrede drucken. Um einen Kommentar zu beginnen, verwenden Sie das Hash-Symbol, das manchmal auch als Zahlenzeichen bezeichnet wird So bezeichne ich es gerne. In den USA wird es manchmal auch Pfundzeichen genannt . Das Vereinigte Königreich könnte dem nicht zustimmen. Ein technischer Name ist Octothorp. Davon haben Sie vielleicht gehört. Fangen Sie mit dem Hash-Symbol an, und alles, was Sie danach schreiben , wird ignoriert , wenn das Programm ausgeführt wird. Wenn ich also diesen Code speichere und dann ausführe, können Sie sehen, dass er einfach wie gewohnt ausgeführt wurde. Es hat nichts daran geändert , wie dieser spezielle Code ausgeführt wird. Es gibt zwei Möglichkeiten, wie Sie Ihren Code kommentieren können. Der erste beginnt mit einem Hash-Symbol einer neuen Zeile und wird als Blockkommentar bezeichnet. Der andere Stil wird als Inline-Kommentar bezeichnet. Es wird in derselben Zeile mit einem Hash-Symbol direkt nach dem Code fortgesetzt . Sie können immer noch das Rautenzeichen verwenden, das Hash-Symbol innerhalb einer Zeichenfolge. Zum Beispiel wird Python das Folgende nicht mit einer Zeichenfolge verwechseln. Lassen Sie mich zum interaktiven Fenster zurückkehren. Wenn ich eine Zeichenfolge mit der Zahl Eins drucken würde, hätte das kein Problem. Es wird trotzdem gedruckt, weil es Teil einer Zeichenfolge ist. Im Allgemeinen ist es eine gute Idee, Ihre Kommentare so kurz wie möglich zu halten. Aber manchmal müssen Sie mehr schreiben, als vernünftigerweise in eine einzelne Zeile passt . In diesem Fall können Sie Ihren Kommentar in einer neuen Zeile fortsetzen und ihn auch mit einem Hash-Symbol beginnen. Sie können auch Zeilen Ihres Codes auskommentieren. Dazu platzieren Sie das Hash-Nummernzeichen am Anfang einer Codezeile. Es ist eine zerstörungsfreie Methode , um das Verhalten Ihres Programms zu testen , ohne dass es bestimmte Codezeilen ausführt. Und es gibt ein paar Empfehlungen wie Sie Ihre Kommentare formatieren sollten. Auch diese sind laut PEP acht, Kommentare sollten immer in vollständigen Sätzen verfasst werden Sie sollten ein einzelnes Leerzeichen zwischen dem Hash-Symbol und dem ersten Wort des Kommentars Inline-Kommentar sollte mit zwei Leerzeichen nach Ihrem Code beginnen . PEP Eight empfiehlt außerdem, Ihre Kommentare sparsam zu verwenden Kommentare, die tatsächlich beschreiben was bereits offensichtlich ist, sind unnötig und können für viele Programmierer ein großes Ärgernis sein ein großes Ärgernis Kommentare werden am besten verwendet, um Code zu verdeutlichen , der möglicherweise schwer zu verstehen oder um zu erklären, warum etwas auf bestimmte Weise codiert ist . Danke fürs Zuschauen. 14. Interagieren mit IDLE 2024: In diesem Kurs werden wir Sie in viele dieser interaktiven Programmierübungen einbeziehen . Die Idee ist, dass Sie nicht nur da sitzen und mir beim Reden zuschauen, dass Sie tatsächlich alles, was Sie lernen, in die Praxis umsetzen. Auf diese Weise wird es tatsächlich dein eigenes. Diese Programmierübungen sind großartig, weil wir Ihnen Anweisungen geben und Ihnen zeigen können , was passieren sollte, wenn Sie den richtigen Code schreiben, was er tun muss und was Sie mit Ihrem Code machen können. Außerdem können wir sehen, wie er in der Konsole ausgeführt wird. Durch viele dieser Übungen wirst du in der Lage sein, ein Übungen wirst du in der Lage sein, höheres Level zu erreichen und ein besserer Programmierer zu werden Um sicherzustellen, dass Sie mit Idol interagieren können, versuchen Sie die folgenden Schritte auf Ihrem Computer Pausiere das Video jetzt und schließe diese Herausforderung ab. Ordnung. Wie bist du zurechtgekommen? Ich hoffe wirklich, dass du es gut versucht hast. Weil du in diesen Momenten programmieren lernen wirst. Das ist natürlich der Anfang. Nun, dies ist eine sehr einfache Übung, mit der sichergestellt werden soll , dass Sie die inaktive Software in Ihrem Programm finden , Leerlauf starten und dann etwas sehr Einfaches damit machen können. Geben Sie also einfach eine gedruckte Anweisung ein. Zuerst werden wir den Leerlauf auf Ihrem System ausfindig machen. Also klicke ich hier , um nach Idle zu suchen. Hier ist es. Klicken Sie alternativ auf die Stern-Schaltfläche. Suchen Sie den Python-Ordner. Und dann siehst du in dieser Gruppe ein Element für den Leerlauf. Also klicke einfach darauf. Und das sollte das Idol auf unserem System laufen In diesem Python-Shell-Fenster läuft ein Idol. Hier läuft der Interpreter für den interaktiven Modus und wir haben die Eingabeaufforderung, die drei Größer-als-Zeichen Das ist die Aufforderung , die darauf wartet, dass wir eine Python-Anweisung eingeben, und dann wird sie diese Anweisung ausführen. In der Übung werden Sie also aufgefordert, eine Print-Anweisung einzugeben. Lassen Sie uns weitermachen und das eingeben. Drucken. Und dann haben wir eine öffnende Klammer, und dann geben wir die Zeichen, die wir drucken möchten , in eine Reihe von Anführungszeichen ein Das ist ein Idol-Test. Und dann setzen wir ein schließendes Anführungszeichen und eine schließende Klammer Jetzt drücke ich die Eingabetaste und wir sollten das Ergebnis dieser Anweisung sehen Wenn ich also die Eingabetaste drücke, der Python-Interpreter diese Anweisung ausgeführt, und hier sehen wir die Ausgabe Wenn Sie also alles richtig eingegeben haben, sollte Ihr Bildschirm so aussehen Möglicherweise haben Sie einen Tippfehler gemacht. Ein häufiger Fehler besteht beispielsweise darin, die Anführungszeichen wegzulassen. Wenn Sie also so etwas gemacht haben, lassen Sie mich einfach weitermachen und diesen Fehler bewusst machen Da können Sie also sehen, dass ich die Aussage eingegeben habe, aber die Anführungszeichen weggelassen habe Und in diesem Fall erhalte ich eine Fehlermeldung, die mir mitteilt, dass ich einen Syntaxfehler habe , eine ungültige Syntax Wenn Sie also so etwas sagen, schauen Sie sich an, wie die Aussage in Ihrem Lehrbuch erscheint und stellen Sie sicher, dass Sie sie genau so eingeben , wie sie erscheint Ein weiterer häufiger Fehler besteht beispielsweise darin, die richtige Anzahl von Klammern wegzulassen die richtige Anzahl von Klammern Also hier tippe ich die Print-Anweisung korrekt aus, außer dass ich die schließende Klammer nicht eingegeben habe Wenn ich jetzt die Enter-Taste drücke, werden Sie feststellen, dass ich keine Fehlermeldung erhalte, aber der Python-Interpreter wartet tatsächlich darauf, dass ich die Anweisung abschließe Der Cursor geht einfach runter zur nächsten Zeile, und jedes Mal, wenn ich die Enter-Taste drücke, geht es einfach runter zur nächsten Zeile, aber ich erhalte keine Ausgabe Es wartet darauf, dass ich die schließende Klammer eingebe, und dann gibt es mir die Ausgabe Wenn Sie also dieses Verhalten sehen, ist das wahrscheinlich ein Hinweis darauf, dass Sie eine Klammer ausgelassen haben all diese Dinge werden Sie sich gewöhnen, wenn Sie immer mehr in der inaktiven Umgebung arbeiten Wenn Sie jetzt mit Idol fertig sind, können Sie zum Menü Datei gehen und Beenden wählen, oder Sie können einfach Strg+Q mit einer Tastatur eingeben, es zu schließen Danke fürs Zuschauen. 15. Hilfe finden 20224: Yo. Was ist los, Leute. In diesem Vortrag werden wir uns damit befassen, wie Sie Hilfe finden können, wenn Sie nicht weiterkommen. Außerdem lernen Sie die besten Webseiten und Ressourcen für Python-Fragen und -Antworten kennen. Also lass uns anfangen. Wenn du irgendwann programmieren lernst , wirst du nicht weiterkommen. Das ist für Anfänger und auch erfahrene Programmierer absolut normal . Wenn Sie nicht weiterkommen und bevor Sie Hilfe von jemand anderem erhalten können, sollten Sie zunächst Ihre Situation einschätzen. Ich meine, sich selbst zu hinterfragen und zu hinterfragen, was Sie zu tun versuchen und welches Ergebnis Sie erzielt haben. Programmierprobleme zu lösen ist nicht so schwierig, wie Sie vielleicht denken. Lassen Sie uns ein Beispiel machen. Geben Sie A plus B und drücken Sie dann die Eingabetaste. Ein Pfeil erscheint in roter Farbe. Python gibt einen Traceback , wenn in Ihrem Code eine Ausnahme ausgelöst wird Ein Traceback ist ein Bericht, der die Funktionsaufrufe enthält , die in Ihrem Code zu einem bestimmten Zeitpunkt ausgeführt wurden sich keine Sorgen. Ich habe einen ganzen Abschnitt, in dem Fehler und deren Behandlung erklärt werden. Es ist nicht notwendig zu verstehen, was die Fehlermeldung jetzt bedeutet, aber ich werde dir eine kurze Erklärung geben. Dies ist ein Namensfehler, eine der häufigsten Arten von Python-Fehlern. Ein Namensfehler bedeutet , dass Sie versucht haben, eine Variable zu verwenden, die noch nicht existiert. Ein Namensfehler wird ausgelöst , wenn Sie versuchen, einen Variablen- oder Funktionsnamen zu verwenden , der nicht gültig ist. In Python läuft der Code von oben nach unten. Das bedeutet, dass Sie eine Variable nicht deklarieren können , nachdem Sie versucht haben, sie in Ihrem Code zu verwenden. Python wüsste nicht, was die Variable tun soll. In unserem Beispiel haben wir keine Variablen namens A und eine Variable namens B deklariert . Um dieses Problem zu lösen, müssen wir A und B deklarieren , bevor wir sie in unserem Code verwenden. Es gibt zwei Hauptarten von Fehlern. Ein Syntaxfehler bedeutet im Grunde , dass Sie einen Interpunktionsfehler gemacht haben Dies sind die häufigsten Fehler. Gewöhnen Sie sich daran, genau zu lesen, dass Sie getippt haben, und es sorgfältig mit dem zu vergleichen , was Sie hätten tippen sollen Logikfehler treten auf, wenn Sie falsch verstanden haben, was Sie versuchen zu tun oder worum Sie Python gebeten haben Diese Fehler können schwer zu erkennen und schwieriger aufzuspüren Der einfachste Weg , Hilfe zu erhalten, besteht darin , die Fehlermeldung in die Google-Suche zu kopieren Sie sollten unzählige Links sehen, die erklären was die Fehlermeldung bedeutet und was sie verursacht. Sie können auch versuchen, die Leute direkt in einem Webformular wie Stack Overflow zu fragen einem Webformular wie Stack Overflow Hier ist die Webadresse. Stack Overflow ist eine der beliebtesten Frage- und Antwortseiten für Programmierer Es ist sehr zuverlässig , da Benutzer über die Antworten abstimmen können , die sie am hilfreichsten finden Die besten Antworten sind also normalerweise die ersten, die Sie finden. Eine andere Möglichkeit, Hilfe zu finden, ist die offizielle Python-Dokumentation. Hier ist die Webadresse. Es ist nützlich und enthält eine Menge Dokumentation. Schließlich ist pythontutor.com eine großartige Webseite. Es verfügt über ein Tool, mit dem Sie Python-Programme schreiben oder einfügen und Schritt für Schritt visualisieren können, was der Computer tut , während er diese Programme ausführt 16. Schreiben deines ersten Python-Programms – Zusammenfassung: In dieser Lektion werde ich den Abschnitt zusammenfassen und einige zusätzliche Ressourcen zur Verfügung stellen , damit Sie weiter lernen In diesem Abschnitt wurden Ihnen mehrere neue Konzepte vorgestellt Sie lernen, wie Variablen Werten in Ihrem Code Namen geben. Sie lernen, den Zuweisungsoperator zu verwenden , um den Variablen Werte zuzuweisen. Erfahren Sie mehr über Syntaxfehler und wie sie auftreten, wenn Sie Code schreiben, der in der Python-Sprache nicht zulässig ist. Außerdem haben Sie etwas über Laufzeitfehler gelernt und darüber, wie sie auftreten, während ein Programm ausgeführt wird. Bei Laufzeitfehlern erhalten Sie außerdem eine Rückverfolgbarkeit, die Ihnen nützliche Informationen über den Fehler anzeigen kann nützliche Informationen über den Fehler Diese Fehler sollten am besten von unten nach oben gelesen werden. Dabei handelt es sich bei Kommentaren um Codezeilen , die nicht ausgeführt werden und hauptsächlich der Dokumentation dienen. Um dein Wissen zu testen, gibt es ein Quiz, das du dir für diesen Abschnitt ansehen kannst. Herzlichen Glückwunsch zum Schreiben Ihres ersten Programms und ich hoffe, Sie bald im nächsten Abschnitt zu sehen. 17. Strings und String-Methoden – EINFÜHRUNG 2024: Hallo zusammen und willkommen zu Strings und String-Methoden. Python-Programmierer haben täglich mit Text zu tun, egal ob es darum geht, Text auf einer Webseite oder in einer grafischen Benutzeroberfläche anzuzeigen einer Webseite oder in einer grafischen Benutzeroberfläche oder sogar eine Eingabe zu akzeptieren , die ein Benutzer in Ihre Anwendung eingegeben hat Es gibt sogar ganze Bereiche der Datenwissenschaft, die sich mit der Extraktion von Informationen aus Text befassen , beispielsweise Stimmungsanalysen beispielsweise Textsammlungen in Python werden Zeichenketten genannt, und es gibt spezielle Funktionen, sogenannte Zeichenkettenmethoden, die zur Manipulation von Zeichenketten verwendet werden, z. B. das Ändern einer Zeichenfolge von Groß - in Kleinbuchstaben, das Entfernen von Leerzeichen oder Ersetzen von Teilen der Zeichenfolge durch einen anderen Text In diesem Abschnitt erfahren Sie, wie Sie Zeichenketten teilweise mithilfe von Zeichenkettenmethoden manipulieren Sie werden mit Benutzereingaben arbeiten. Sie werden lernen, wie man mit Zahlenfolgen umgeht und Zahlen in Zeichenketten umwandelt, wie man Zeichenketten für den Druck formatiert. Und nebenbei lernst du etwas über F-Zeichenketten mehrzeilige Zeichenketten und wie man Zeichenketten indexiert und aufteilt. Was ist Unveränderlichkeit von Zeichenketten und wie Sie weitere Methoden mit Idle selbst entdecken In Ordnung, es ist an der Zeit, sich damit zu befassen, was eine Zeichenfolge ist. 18. Was ist ein String 2024: Hallo, alle zusammen. Das ist Andreas, und ich möchte Sie in dieser neuen Sektion begrüßen. In den folgenden Vorlesungen lernen Sie die verschiedenen Arten von Daten kennen denen Sie in Ihren Python-Programmen arbeiten können. Wir haben viel zu tun, also starten Sie Ihre Python-Shell und lassen Sie uns anfangen. Eine Zeichenfolge ist eine Reihe von Zeichen, ein Text, wenn Sie es vorziehen. Alles, was in Anführungszeichen steht, wird als Zeichenfolge betrachtet. In Python können Sie einfache oder doppelte Anführungszeichen um Ihre Zeichenketten setzen. Wenn ich beispielsweise Python mit doppelten Anführungszeichen und Python mit einfachen Anführungszeichen eintippe, ist das Ergebnis nicht dasselbe. Es ist wichtig zu verstehen, was wir tun, wenn wir Anführungszeichen verwenden und wann nicht. Wenn ich in Anführungszeichen Verkäufe eintippe, die 1.000 entsprechen ist Umsatz eine Zeichenfolge, keine Zahl. Wenn ich jedoch Umsatz in Höhe von 1.000 ohne Anführungszeichen eintippe, dann ist Umsatz eine Ganzzahl. Aber wie kann man ein Anführungszeichen innerhalb einer Zeichenfolge verwenden? Geben Sie ein und drücken Sie die Eingabetaste. Das ist eine ungültige Syntax, wie Sie sehen, dafür gibt es Lösungen. Eine Möglichkeit besteht darin, mit der Zeichenfolge und doppelten Anführungszeichen wie folgt zu beginnen . Da die Zeichenfolge mit einem doppelten Anführungszeichen beginnt, weiß Python, dass einfache Anführungszeichen Teil der Zeichenfolge sind und nicht das Ende der Zeichenfolge markieren. Wenn Sie jedoch sowohl einfache als auch doppelte Anführungszeichen in der Zeichenfolge verwenden müssen , müssen Sie ein Escape-Zeichen oder Escape-Sequenzen verwenden . Ein Escape-Zeichen besteht aus einem umgekehrten Schrägstrich gefolgt von dem Zeichen , das Sie der Zeichenfolge hinzufügen möchten Das Escape-Zeichen für ein einfaches Anführungszeichen ist also dieses. Lassen Sie uns die obige Zeichenfolge eingeben, indem wir jetzt das Escape-Zeichen verwenden und doppelte Anführungszeichen vermeiden. Ich bin großartig. Es gibt noch eine weitere Verwendung von Escape-Zeichen, nämlich spezielle Bedeutungen wie neue Zeilen, und wir werden sie als Nächstes in Aktion sehen. Hier wird D also mit einem Text definiert. Dies ist Zeile eins, gefolgt von einem umgekehrten Schrägstrich N, was bedeutet, dass wir eine neue Lassen Sie uns jetzt weiter tippen. Das ist Zeile zwei. Und die Zitate sind am Ende fertig. Hier haben wir also den umgekehrten Schrägstrich N, was eine neue Zeile bedeutet Wenn wir print D verwenden, werden Sie sehen, dass dies Zeile eins ist, und in einer separaten Zeile ist dies Zeile zwei Nun, das ist etwas, das wir häufig verwenden, besonders wenn wir mit Textdateien arbeiten, und oft werden Sie feststellen, dass Sie eine neue Zeichenzeile einfügen oder aus Texten entfernen müssen . Es ist auch möglich, Tabulatoren mit einem umgekehrten Schrägstrich T zu erstellen. Hier sehen Sie also Variablen, die mit einigen Tabulatorzeichen definiert Und noch einmal, das ausdrucken. Das sind die Tabs, die zwischen den Wörtern eingefügt wurden . Beachten Sie unbedingt die verschiedenen Escape-Zeichen, die Sie in den Text einfügen können. eine Auswahl an Escape-Zeichen wie Backslash, einfaches Anführungszeichen, doppelte Anführungszeichen , neue Zeile mit N, Zeilenwechsel mit R, gibt eine Auswahl an Escape-Zeichen wie Backslash, einfaches Anführungszeichen, doppelte Anführungszeichen, neue Zeile mit N, Zeilenwechsel mit R, Tabulatortaste mit T und die Möglichkeit, Zeichen mit Oktal- oder Hexadezimalwerten zu definieren mit Oktal- oder In Ordnung. Lass uns über Rohsaiten sprechen. In einer Rohzeichenfolge werden Escape-Sequenzzeichen, wie Sie sie zuvor gesehen haben, nicht interpretiert. Wir werden sehen, wie man ein Rohzeichen definiert. Definieren wir eine Variable namens A mit dem neuen Zeilenzeichen. Um eine Rohzeichenfolge zu erstellen, wird einer Zeichenfolge ein R vorangestellt, wie hier zu sehen Ansonsten ist der Kontext genau derselbe. Ausdrucken wird die unformatierte Zeichenfolge angezeigt, was bedeutet, dass das neue Zeilenzeichen nicht von print at its left intakt interpretiert wird . Dies ist nützlich in Anwendungen, in denen die Escape-Sequenzzeichen nicht normal interpretiert werden sollen, wie z. B. bei regulären Ausdrücken. Manchmal müssen Sie eine mehrzeilige Zeichenfolge einfügen. Eine mehrzeilige Zeichenfolge beginnt und endet entweder mit drei einfachen oder drei doppelten Anführungszeichen Alle Anführungszeichen, Tabulatoren oder Nachrichtenzeilen zwischen den dreifachen Anführungszeichen werden als Teil der Zeichenfolge betrachtet Geben wir Folgendes ein. Das Ergebnis wird auf der Shell angezeigt. Außerdem wird häufig eine mehrzeilige Zeichenfolge für Kommentare verwendet. Großartig. Ich hoffe, du hast verstanden, was Zeichenketten sind und wie du sie erstellen und verwenden kannst. Denken Sie daran, dass Zeichenketten einer der grundlegenden Datentypen in Python sind der grundlegenden Datentypen in . Danke fürs Zuschauen. 19. Was ist eine Zeichenfolge (Übung) 2024: Willkommen zurück, alle, zur ersten Übung dieses Abschnitts. In unseren Übungsstunden dreht sich alles um Training. Sie lernen, Code zu schreiben , indem Sie sorgfältig ausgewählte Übungen lösen. Außerdem trainierst du, den Code anderer Leute zu lesen und deinen Denkprozess zu kommunizieren. Dabei übst du die Konzepte, die du in der vorherigen Lektion gelernt hast , und hilfst dabei, dass sie Bestand haben. In den nächsten Übungsstunden werde ich Sie mit Aufgaben vertraut machen. Geben Sie Ihnen die Möglichkeit, sie selbst zu lösen, und zeigen Sie Ihnen dann Schritt für Schritt, wie ich die einzelnen Aufgaben gelöst habe. Gehen Sie für jede Aufgabe drei Schritte durch, erfahren Sie mehr über die Übung, programmieren Sie Ihre eigene Lösung und vergleichen Sie dann Ihre Lösung und den Prozess, der Sie dazu geführt hat, mit meiner. Wenn ich Sie durch eine Aufgabe führe, erkläre ich, was ich mache und warum ich es so mache. Das gibt Ihnen die Möglichkeit, nicht nur unsere endgültigen Lösungen zu vergleichen , sondern auch, wie wir dazu gekommen sind. Im Idealfall kann Ihnen dies dabei helfen, Einblicke in die Prozesse zu gewinnen, die von einer Aufgabenbeschreibung zur funktionierenden Lösung im Code führen. Okay, genug geredet. Hier ist deine erste Übung. Was ist eine Saite? Sehr philosophische Frage, aber wir werden sie etwas praktischer angehen Ihre Aufgabe wird es sein , vier einzelne Zeichenketten zu drucken , die bestimmte Bedingungen erfüllen Die erste besteht darin , dass die Zeichenfolge doppelte Anführungszeichen enthalten sollte . Der zweite sollte einen Apostroph in der Zeichenfolge haben einen Apostroph in der Die dritte sollte mehrere Zeilen enthalten, wobei der Leerraum erhalten bleiben sollte, und die vierte sollte in mehreren Zeilen codiert sein, aber dann wird sie nur in einer einzigen Zeile gedruckt Dies sind verschiedene Arten, Zeichenketten zu konstruieren, und es ist nur eine Möglichkeit, sich daran zu erinnern, wie Sie Zeichenketten erstellen können, die bestimmte Bedingungen erfüllen Mach weiter. Tun Sie das jetzt, und wenn Sie mit Ihrer Lösung fertig sind, fahren Sie mit der nächsten Lektion fort, in der ich auch die vier Aufgaben lösen werde, und dann können Sie sie mit meiner Lösung vergleichen. 20. Was ist eine String-Lösung 2024: Hier bin ich in der interaktiven Idle-Shell. Ich mache weiter und mache mir kurze Notizen zu den verschiedenen Aufgaben, die ich hier zu erledigen habe. Es gab vier Aufgaben. Ich mache mir zunächst einfach Notizen darüber, was ich tun soll. Das hilft mir, mich zu organisieren und mich erinnern, was die Aufgabe eigentlich ist. Die erste Methode bestand also darin, eine Zeichenfolge mit doppelten Anführungszeichen zu drucken. Also möchte ich doppelte Anführungszeichen in der Zeichenfolge haben. Das ist die erste Aufgabe. Dann bestand die zweite darin, einen Apostroph in der Zeichenfolge zu haben einen Apostroph in der Die dritte bestand darin, eine mehrzeilige Zeichenfolge zu haben , die auch in mehreren Zeilen gedruckt wird Und die vierte bestand darin, eine mehrzeilige Zeichenfolge zu schreiben, aber in einer einzigen Zeile gedruckt Also habe ich mir nur ein paar kurze Notizen gemacht, um mich an die Aufgaben zu erinnern, und ich werde loslegen. Die erste Möglichkeit besteht darin, doppelte Anführungszeichen in der Zeichenfolge zu drucken, und das kann ich tun, indem ich einfache Anführungszeichen verwende , um die Zeichenfolge Und dann kann ich darin doppelte Anführungszeichen verwenden. Ich öffne eine Zeichenfolge, indem ich ein einfaches Anführungszeichen setze. Dann kann ich hier etwas hineinschreiben. Also werde ich sagen, dass diese Zeichenfolge doppelte Anführungszeichen enthält. Und ich habe die Wörter doppelte Anführungszeichen mit den tatsächlichen doppelten Anführungszeichen umgeben . Und es sollte gut gedruckt werden , weil ich die Anführungszeichen nicht mische. Ich verwende einfache Anführungszeichen, um meine Zeichenfolge abzugrenzen. Und dann die doppelten Anführungszeichen darin. Sie werden nicht als Zeichenfolgentrennzeichen betrachtet, sondern sind nur die doppelten Anführungszeichen des Zeichens Jetzt drücke ich die Eingabetaste und mein Druckaufruf wird ausgeführt, und ich erhalte die Zeichenfolge als Ausgabe Großartig. Der zweite, ein Apostroph in der Zeichenfolge Führen Sie einen weiteren Print-Aufruf durch, und jetzt werde ich doppelte Anführungszeichen verwenden , um die Zeichenfolge zu trennen. Also öffne ich es mit einem doppelten Anführungszeichen. Dann kann ich etwas schreiben. Ich werde sagen, diese Zeichenfolge hat einen Apostroph, und ich verwende einen Apostroph nach dem Diese Zeichenfolge hat also einen Apostroph. Das ist keine Englischstunde, und ich wäre sowieso nicht die beste Person, um das zu unterrichten Aber ich habe ein einfaches Anführungszeichen oder einen Apostroph in der Zeichenfolge Und jetzt drücke ich die Eingabetaste, und das wird ausgeführt und funktioniert einwandfrei Übung drei bestand darin, eine mehrzeilige Zeichenfolge zu schreiben , die auch in mehreren Zeilen gedruckt wird. Ich kann das also mit dreifachen Anführungszeichen machen. So funktionieren beispielsweise doppelte Anführungszeichen oder doppelte Anführungszeichen oder dreifache einfache Anführungszeichen genauso. Und jetzt kann ich sagen, dass diese Zeichenfolge mehreren Zeilen geschrieben wurde. Nun, noch nicht. Lass mich die Eingabetaste drücken. Und dann fahre ich mit der Zeichenfolge fort und sage, sie wird in mehreren Zeilen angezeigt. Und ich muss die Zeichenfolge schließen. Also werde ich es wieder mit dreifachen doppelten Anführungszeichen schließen . Eins, zwei, drei und dann schließe ich auch die Klammern aus der Druckfunktion Und jetzt bin ich bereit, die Eingabetaste zu drücken, und das wird ausgeführt. Und wie Sie sehen können, das neue Linienzeichen. Also die Eingabe, die ich hier eingegeben habe, dieses neue Zeilenzeichen ist auch Teil der Zeichenfolge. Die Ausgabe beinhaltet es also, und deshalb wird es in zwei Zeilen angezeigt. Und dann endlich die letzte Aufgabe, eine mehrzeilige Zeichenfolge zu schreiben, die in einer einzigen Zeile gedruckt wird, und das können Sie tun, indem Sie das neue Zeilenzeichen maskieren Jetzt verwende ich nur ein doppeltes Anführungszeichen und sage, dass diese einzeilige Zeichenfolge geschrieben wurde Und dann verwende ich den umgekehrten Schrägstrich, der maskiert Es ist ein Sonderzeichen, das vor dem folgenden Zeichen maskiert wird, was in diesem Fall eine neue Zeile sein wird, weil nach dem Einfügen des umgekehrten Schrägstrichs die ich nach dem Einfügen des umgekehrten Schrägstrichs die Eingabetaste drücke und in der nächsten Zeile weitertippe Python betrachtet dies jedoch immer noch als Teil der vorherigen Zeile. Schreiben Sie also weiter meine Zeichenketten und sagen Sie, dass Sie mehrere Zeilen verwenden. Und dann schließe die Zeichenfolge. Mit einer Zeichenfolge wie dieser, die nur durch ein Anführungszeichen getrennt ist Eine Zeichenfolge über mehrere Zeilen zu verteilen, wie ich es hier mache , funktioniert nur, wenn Sie den umgekehrten Schrägstrich verwenden Andernfalls würde Python einen Syntaxfehler auslösen und jetzt die Eingabetaste drücken. Und wie Sie sehen können, wird es nur in einer einzigen Zeile angezeigt , weil ich das neue Zeilenzeichen, das ich hier verwendet habe, maskiere. Ordnung. Das war also eine kurze Zusammenfassung der verschiedenen Möglichkeiten, wie Sie mischen und zuordnen können beim Schreiben Ihrer Zeichenkettenliterale Anführungszeichen 21. Strings mit String-Methoden manipulieren 2024: Zeichenketten sind mit speziellen Funktionen gebündelt. Sie werden Zeichenkettenmethoden genannt, die Sie verwenden können, um mit Zeichenketten zu arbeiten und sie zu bearbeiten werden, stehen zahlreiche Zeichenkettenmethoden Wie Sie sehen werden, stehen zahlreiche Zeichenkettenmethoden zur Verfügung. Zunächst können Sie sich auf eine Handvoll häufig verwendeter Methoden konzentrieren . In dieser Lektion erfahren Sie, wie Sie eine Zeichenfolge in Groß - oder Kleinbuchstaben umwandeln , wie Sie Leerzeichen aus einer Zeichenfolge entfernen und wie Sie feststellen, ob eine Zeichenfolge mit bestimmten Zeichen beginnt oder endet Okay, Zeit, deine erste Methode zu lernen. Die erste wird daran arbeiten, die Groß- und Kleinschreibung der Zeichenfolge zu konvertieren. Diese Methode ist um einen Punkt niedriger. Sie konvertiert die Zeichenfolge in alle Kleinbuchstaben, nimmt alle Großbuchstaben und wandelt sie in Kleinbuchstaben Es sieht ungefähr so aus. Wenn Sie die Zeichenfolge von Albert Einstein hinzufügen und dann den Punkt niedriger als Methode hinzufügen , werden alle Kleinbuchstaben zurückgegeben Der Punkt teilt Python mit, was folgt, ist der Name einer Methode, und in diesem Fall der niedrigeren Methode. Bei String-Methoden , die einen Punkt am Anfang ihres Namens verwenden, werden Sie sehr oft darauf hingewiesen hören String-Methoden , die einen Punkt am Anfang ihres Namens verwenden , zum Beispiel Punkt niedriger oder, wie Sie hier in einer Sekunde lernen werden, Punkt oben. Dies macht es etwas einfacher, Funktionen, bei denen es sich um Zeichenkettenmethoden handelt, von integrierten Funktionen wie print oder type zu unterscheiden Zeichenkettenmethoden handelt, von integrierten Funktionen , die Sie zuvor gelernt haben. Die Methoden funktionieren für eine Zeichenfolge von selbst, indem sie den Punkt und eine niedrigere Zahl hinzufügen. Vergessen Sie nicht, die Methode in Klammern aufzurufen. Sie funktionieren auch, wenn Sie sie einer Variablen zugewiesen haben. In diesem Fall geben wir also Name und das.in ein und möchten die kleingeschriebene Version des Namens zurückgeben Okay. Jetzt, wo du mit Punkt unten gespielt hast, wirst du als Nächstes Punkt oben lernen. obere Punkt konvertiert also die Zeichenfolge aus allen Großbuchstaben Wenn Sie also denselben Variablennamen verwenden und die Methode mit dem oberen Punkt anwenden, werden Sie feststellen, dass alle Großbuchstaben zurückgegeben Also nur noch ein Vergleich zwischen Methoden und Funktionen , den Sie zuvor gesehen haben. Zeichenkettenmethoden beginnen mit einem Punkt am Anfang ihres Namens, und so werden Sie mit dem führenden Punkt auf sie verweisen. Also Punkt unten oder Punkt oben. Das macht es viel einfacher, Funktionen, bei denen es sich um Zeichenkettenmethoden handelt, von integrierten Funktionen wie print oder n zu unterscheiden Funktionen, bei denen es sich um Zeichenkettenmethoden handelt, von . Wenn Sie sie mit den unterschiedlichen Ergebnissen dieser Funktionen vergleichen , ist der wichtige Unterschied, wie sie verwendet werden. Diese integrierten Funktionen werden einfach von selbst aufgerufen. Wenn Sie also die Länge einer Namenszeichenfolge ermitteln möchten, rufen Sie Ln auf und geben den Namen hinein. Oder wenn Sie einen Print-Namen wollen, können Sie einfach das Gleiche tun , statt auf der anderen Seite mit Groß- und Kleinnamen, beide müssen zusammen mit der Zeichenfolge verwendet werden. Sie existieren nicht unabhängig voneinander. Leerraum ist jedes Zeichen , das als Leerzeichen gedruckt wird. Dazu gehören Dinge wie Leerzeichen, Tabulatoren und sogar Zeilenvorschübe, bei denen es sich um Sonderzeichen handelt, die die Ausgabe in eine neue Zeile verschieben. Manchmal müssen Sie Leerzeichen am Anfang oder Ende einer Zeichenfolge entfernen . Dies ist besonders nützlich, wenn Sie mit Zeichenfolgen arbeiten , die aus Benutzereingaben stammen, also etwas, das jemand eingegeben hat und die manchmal versehentlich zusätzliche Leerzeichen enthalten können zusätzliche Leerzeichen Es gibt drei Zeichenkettenmethoden, mit denen Sie diesen Leerraum aus einer Zeichenfolge entfernen Punkt-R-Streifen entfernt die abschließenden Leerzeichen von der rechten Seite der Zeichenfolge Punktstreifen entfernt die vorangegangenen Leerzeichen von der linken Seite der Zeichenfolge Und Dot Strip entfernt Leerzeichen sowohl von der linken als auch von der rechten Seite, sodass alles, was am Anfang oder Ende der Zeichenfolge steht, entfernt wird. Interessanterweise werden Leerzeichen nicht aus der Mitte entfernt. Lassen Sie uns einiges davon im interaktiven Fenster ausprobieren. Zuerst müssen wir etwas Leerraum schaffen. Also mache ich einen neuen Namen, füge ein paar Leerzeichen und einen Tabulator ein, und ich gebe wieder meinen eigenen Namen ein. Du kannst deinen eigenen Namen verwenden. In diesem Fall füge ich ein paar Leerzeichen und einen Tabulator hinzu und dann einen Schrägstrich, der ein Zeilenvorschub ist Eigentlich werde ich zwei dieser Zeilenvorschübe mit ein paar Leerzeichen dazwischen hinzufügen dieser Zeilenvorschübe mit ein paar Leerzeichen dazwischen Es gibt dort also viele verschiedene Leerräume. Wenn Sie versuchen, mit Namen auszudrucken, werden Sie sogar den gesamten Leerraum sehen, einschließlich der zusätzlichen Zeilenumbrüche, also beide. Okay? Was passiert also, wenn Sie Dot R Strip verwenden? Es hat alle Leerzeichen von der rechten Seite entfernt , einschließlich der Zeilenumbrüche Auch hier ist der Name immer noch derselbe. Wenn ich also Namen und Punktstreifen mache, wird das Leerzeichen vorne weg Und wenn wir Punktstreifen verwenden , werden die Leerzeichen auf beiden Seiten entfernt, der gesamte weiße Raum Seien es Tabulatoren, Leerzeichen oder Zeilenvorschübe. Wenn Sie mit Text arbeiten, müssen Sie manchmal feststellen, ob eine bestimmte Zeichenfolge mit einem bestimmten Zeichen beginnt oder endet. Sie können zwei Zeichenkettenmethoden verwenden , um dieses Problem zu lösen. Die erste ist Punkt beginnt mit, und die andere ist Punkt endet mit. Lass es uns im interaktiven Fenster ausprobieren. Nehmen wir an, wir haben eine bioelektrische Saite. Wir werden eine Variable namens Leistung erstellen und Bioelektrizität groß schreiben. Wenn Sie die Methode verwenden, die mit beginnt, und in diesem Fall müssen Sie das tun, können Sie sehen, dass sie anfängt, nach dem gewünschten Präfix zu Und was ist, wenn ich Bio in Kleinbuchstaben schreibe? Wird das funktionieren? Das gibt Falsch zurück. Sie haben vielleicht herausgefunden, warum weil es mit einem B beginnt. Die Tatsache, dass es mit der Methode beginnt , unterscheidet zwischen Groß- und Kleinschreibung. Damit das wahr ist, müssten Sie dasselbe eingeben, aber mit einem großen Bo beginnen, das würde wahr zurückgeben. Und wenn Sie ein anderes ausprobieren wollten, endet in diesem Fall, sagen wir, Sie sagen, endet es mit elektrisch? Du würdest wahr werden. Auch hier wird zwischen Groß- und Kleinschreibung unterschieden. Die Werte true und false sind keine Zeichenketten. Es gibt eine spezielle Art von Daten, die als Booling-Wert bezeichnet werden. In einer späteren Lektion erfahren Sie mehr über Boleing-Werte. Jetzt sind Zeichenketten unveränderlich. Die meisten Zeichenkettenmethoden ändern eine Zeichenfolge wie upper und lower, geben aber tatsächlich Kopien der ursprünglichen Zeichenfolge mit diesen Änderungen zurück der ursprünglichen Zeichenfolge mit diesen Änderungen Wenn Sie also nicht vorsichtig sind, erkennen Sie dies möglicherweise nicht, und es könnte zu subtilen Fehlern in Ihrem Programm führen. Probiere das aus. Also gib diesmal einen Namen Wells Virginia ein. Okay. Also nochmal, wenn Sie Name eingeben und die Methode mit einem großen Punkt angeben, erhalten Sie alles in Großbuchstaben Aber Sie haben vielleicht bemerkt , dass ich das auch etwas früher gezeigt habe , dass das Original nicht verändert wurde es nun dazu zu bringen, den Variablennamen zu ändern, müssten Sie ihn neu zuweisen Das würde also so aussehen. Name entspricht oberem Namen. Jetzt wurde der Name geändert. Dadurch wird die ursprüngliche Zeichenfolge, die Sie dem Namen zugewiesen haben, überschrieben , indem Sie sie neu zuweisen. Sie haben vielleicht bemerkt , dass es viele Methoden gibt, die mit Zeichenketten verknüpft Die Methoden, die ich in dieser Lektion zeige , sind kaum oberflächlich. Idle kann Ihnen helfen, diese neuen Zeichenkettenmethoden zu finden. Lassen Sie mich Ihnen zeigen, wie Sie einige davon entdecken können. Kehren wir zu unserem Beispiel mit Elektrizität zurück. Wenn Sie mit einem Variablennamen beginnen und dann den Punkt hinzufügen, öffnet sich ein kleines Feld und zeigt Ihnen einige der verschiedenen verfügbaren Variablen. Wenn Sie einen Buchstaben eingeben, erhalten Sie auch einige davon. Dadurch werden die Ergebnisse eingegrenzt. Wenn ich anfange, oben zu buchstabieren, wirst du sogar sehen, dass es dort hervorgehoben ist. Sie können dies abschließen, indem Sie die Tabulatortaste drücken, und dann können Sie den Vorgang beenden, indem Sie die Methode aufrufen. Dies ist eine gute Möglichkeit, weitere verfügbare Methoden zu entdecken. Okay. Nachdem Sie nun ein wenig geübt haben , indem Sie versucht haben, einige dieser zusätzlichen Methoden zu finden, hier einen kurzen Überblick. Mit IDL können Sie den Namen einer Variablen eingeben , die einer Zeichenfolge zugewiesen ist, und dann einen Punkt hinzufügen, oft als Punkt gesprochen wird, und dann warten Sie einen Buchstaben eingeben, werden einige Ergebnisse eingegrenzt , und durch Drücken der Tabulatortaste wird dieser Methodenname automatisch eingetragen, wenn Sie mit der Benennung begonnen haben Und eine Anmerkung: Das funktioniert sogar mit Variablennamen. Versuchen Sie, die ersten Buchstaben von electric einzugeben und die Tabulatortaste zu drücken. Wenn Sie keine anderen Namen definiert haben , die diese ersten Buchstaben gemeinsam haben, vervollständigt Idle den Namen electric für Sie. Tab ist also eine nette Art von Autovervollständigung, die du in Idol verwenden kannst Okay. Zeit, das Gelernte zu überprüfen . Zeit zum Üben. Übung eins. Schreiben Sie ein Programm, das die folgenden Zeichenketten in Kleinbuchstaben umwandelt die folgenden Zeichenketten in Kleinbuchstaben umwandelt Drucken Sie dann jede Zeichenfolge in Kleinbuchstaben in einer separaten Zeile. Übung zwei Versuchen Sie, die erste Übung zu wiederholen, konvertieren Sie jedoch jede Zeichenfolge Großbuchstaben statt in Kleinbuchstaben Übung drei: Schreiben Sie ein Programm, das Leerzeichen aus den folgenden Zeichenketten entfernt Leerzeichen aus den folgenden Drucken Sie dann die Zeichenketten aus wobei der gesamte Leerraum entfernt wurde. Übung vier. Schreiben Sie ein Programm , das die Ergebnisse von Starts with B für jede der folgenden Zeichenketten ausgibt . Übung fünf. mit denselben vier Zeichenketten wie in Übung vier ein Programm, Schreiben Sie mit denselben vier Zeichenketten wie in Übung vier ein Programm, das Zeichenkettenmethoden verwendet , um jede Zeichenfolge so zu ändern , dass der Wert, der mit B beginnt, für alle Zeichenketten den Wert true zurückgibt. Schreiben Sie also noch einmal ein Programm, andere Zeichenkettenmethoden verwendet , um die Zeichenketten so zu ändern, dass, wenn sie mit B beginnen, für alle Zeichenketten den Wert true zurückgibt. Lösungen für diese Übungen und den Code finden Sie in den Ressourcendateien dieser Lektion. Ordnung. Als Nächstes, wie man Zeichenketten indexiert und schneidet. Danke fürs Zuschauen 22. Fallstudien ändern (Übung) 2024: Hier ist deine nächste Übung. Es geht um einen Fallwechsel. In dieser Übung besteht Ihre Aufgabe darin, die Groß-/Kleinschreibung von Zeichenketten zu ändern. Experimentieren Sie einfach und üben Sie ein wenig mit den verschiedenen Zeichenkettenmethoden , die Sie verwenden können, um die Groß Kleinschreibung in Zeichenketten zu ändern. Und die Aufgabe besteht darin, ein Programm zu schreiben, das die folgenden Zeichenketten zuerst in Kleinbuchstaben umwandelt. Und dann hast du hier vier Zeichenketten. Das erste sind Tiere. Der zweite ist Dachs. Der dritte ist Honey Space B und der vierte ist Honey Space Badger Und nachdem Sie sie alle in Kleinbuchstaben umgewandelt haben, sollten Sie diese jeweils in Zeichenketten und in Großbuchstaben umwandeln Zeichenketten und in Großbuchstaben Und Sie sollten jede der Zeichenketten in einer separaten Zeile drucken der Zeichenketten in einer separaten Zeile Das Ergebnis der Lösung dieser Aufgabe wird also im Grunde eine ganze Reihe von Zeilen von Druckaufrufen sein eine ganze Reihe von Zeilen von , in denen Sie einige Zeichenkettenmethoden anwenden. Probieren Sie es aus und fahren Sie dann mit der nächsten Lektion fort und vergleichen Sie Ihre Lösung mit meiner. 23. Den Fall ändern (Lösung) 2024: Die Aufgabe besteht darin, vier Zeichenketten zu erstellen, sie alle in Kleinbuchstaben und dann alle in Großbuchstaben umzuwandeln, jeweils in einer separaten Zeile Ich beginne damit, die Zeichenketten zu definieren und sie Variablen zuzuweisen Die erste Zeile lautete Tiere im Titelfall. Zeichenfolge zwei war Badger. Strang drei Honigbiene. Und die vierreihige Honigdachs, der gefährlichste von allen. Ordnung. Und jetzt schreibe ich Anrufe zum Ausdrucken. Drucken, Klammer öffnen, Zeichenfolge einen Punkt tiefer. Schließe es, gib ein. Und ich habe Tiere als Ergebnis. Druckt die Zeichenfolge zwei Punkte tiefer. Das ist also eine Art Tippübung, wie Sie sehen können, weil Sie für jede der Zeichenketten einfach dasselbe wiederholen Und später im Kurs werden Sie auch lernen, wie Sie das etwas automatisierter machen können, damit Sie nicht so viel tippen müssen Aber vorerst schadet es nicht, ein bisschen Tippübung zu machen und einfach zu üben, wie man diese Zeichenkettenmethoden benutzt und wie man sie auf eine Zeichenfolge anwendet, nämlich indem man zuerst die Zeichenfolge, dann einen Punkt und dann die Zeichenkettenmethode schreibt . Und Sie verwenden diese Klammern hier, in diesem Fall sind sie leer, um diese Methode aufzurufen Es ist also ähnlich wie bei der Druckfunktion, wie Sie hier sehen können, wo Sie auch die Klammern benötigen Großartig. Wir haben sie alle in Kleinbuchstaben umgewandelt Wie Sie sehen können, erfolgt die Ausgabe ausschließlich in Kleinbuchstaben. Und jetzt wollen wir dasselbe tun, aber sie in Großbuchstaben umwandeln Also sagen wir PrintString einen Punkt nach oben. Treten Sie ein. Und Sie können sehen, dass Tiere ausschließlich in Großbuchstaben zurückgegeben Lass uns die Tippübung fortsetzen. PrintString mit zwei Punkten oben. Prinz, Zeichenfolge drei, nicht größer. Und schließlich, Zeichenfolge mit vier Punkten oben. Nett. Und das ist das Ende der Übung. 24. Leerräume entfernen (Übung) 2024: In dieser Übung besteht Ihre Aufgabe darin, ein Programm zu schreiben , das Leerzeichen aus den folgenden Zeichenketten entfernt Leerzeichen aus den folgenden Zeichenketten Drucken Sie dann die Zeichenketten aus, wobei der Leerraum entfernt wurde. Die erste Saite ist Filet Mignon. Ich schätze, das sind ein paar Lebensmittel, aber es sieht so aus, als hätte die Person, die das Menü geschrieben hat, Probleme damit gehabt , an verschiedenen Stellen etwas zu viel Leerraum zu platzieren an verschiedenen Stellen etwas zu viel Leerraum Also denke ich mir die Geschichte rund um die Aufgabe aus, dass Sie der Programmierer des Restaurants sind und das Online-Menü aufräumen sollen , so etwas Siehst du, das erste Getränk hat etwas Weißraum auf der linken Seite Der zweite hat rechts etwas Leerraum und der dritte hat links und rechts Leerraum Es ist also ein Käseburger mit etwas Whitespace-Brötchen. Eine Sache, die für Sie nützlich ist , bevor Sie mit dieser Aufgabe beginnen: Gehen Sie davon aus, dass ich am Anfang jedes dieser Wörter fünf Leerzeichen eingegeben habe am Anfang jedes dieser Wörter fünf Leerzeichen , weil es für mich einfacher ist , als diese Leerzeichen abzutippen, auch wenn es egal ist, wie viele Lassen Sie uns einige Leerzeichen entfernen. 25. Whitespace entfernen (Lösung) 2024: Die Aufgabe besteht also darin, den Leerraum zu entfernen und das Menü zu reinigen Lassen Sie uns diese drei Zeichenketten eingeben. Jetzt habe ich Zugriff auf alle drei Zeichenfolge eins, Zeichenfolge zwei und Zeichenfolge drei. Und Sie können sehen, dass sie diesen weißen Raum haben , den Sie loswerden sollten. Die String-Methode dafür ist Dot Strip. Sie können zum Beispiel sagen, Streifen mit drei Punkten aneinanderreihen, dass Sie einen Streifen mit drei Punkten aneinanderreihen, und dadurch wird der Leerraum sowohl am Anfang als auch am Ende entfernt . Das bedeutet, dass Sie Strip für jede dieser Zeichenketten verwenden könnten , und es wird das tun, worum Sie gebeten werden. Aber Python hat hier zwei spezifischere Methoden , bei denen Sie einfach Leerzeichen von der rechten oder linken Seite entfernen können , die ich für die hier anwenden werde. Zeichenfolge zwei, ich kann den Punkt-R-Streifen verwenden. Es wird nur von der rechten Seite entfernt, aber nicht von der linken Seite. Für die erste Saite kann ich Dot Strip sagen. Das wird den weißen Bereich von der linken Seite entfernen , aber auf der rechten Seite nichts bewirken. Sie können entweder Strip für alle verwenden , und das wird funktionieren, oder Sie können den spezielleren L-Streifen und den R-Strip für Saite 1 bzw. Saite 2 verwenden . 26. String-Indexing 2024: In Programmiersprachen kann häufig über einen numerischen Index oder Schlüsselwert direkt auf einzelne Elemente in einem geordneten Datensatz zugegriffen werden numerischen Index oder Schlüsselwert direkt auf einzelne Elemente in einem geordneten Datensatz zugegriffen Dieser Prozess bezieht sich auf die Indizierung. Zeichenketten sind geordnete Sequenzen von Zeichendaten, und die einzelnen Zeichen einer Zeichenfolge kann direkt über einen numerischen Index zugegriffen werden Die Zeichenkettenindizierung in Python basiert auf Null. Das allererste Zeichen in der Zeichenfolge hätte also den Index Null und das nächste wäre Eins und so weiter Der Index des letzten Zeichens entspricht der Länge der Zeichenfolge minus eins. Schauen wir uns ein Beispiel an. Für die Zeichenfolge apple wird also der erste Index, Index Null, einen Buchstaben A haben, und der letzte Buchstabe, der Index vier ist , ist E. Lassen Sie uns das interaktiv ausprobieren Hier ist eine Zeichenfolge A , die Apfel sein würde. Um auf das erste Element in meiner Zeichenfolge zuzugreifen, verwende ich eckige Klammern. In diesem Fall mit Index Null, und es wird der erste Buchstabe meiner Zeichenfolge abgerufen und so weiter. Index eins ist also das zweite Zeichen, P, und das letzte Zeichen E wird Index vier sein. Eine andere Möglichkeit , dies zu erreichen, wäre die Verwendung der eingebauten Len-Funktion length. Die Länge der Zeichenfolge A minus eins ergibt also auch das letzte Zeichen. Wenn ich zu einem Index gehe, der die Länge der Zeichenfolge überschreitet, erhalte ich einen Indexfehler, der Zeichenkettenindex liegt erhalte ich einen Indexfehler, außerhalb des zulässigen Bereichs. Zeichenkettenindizierung kann auch bei negativen Zahlen spezifisch sein bei negativen Zahlen spezifisch Negative Indizierung ist ebenfalls verfügbar. In diesem Fall gehen Sie rückwärts. Negativ eins wird nach hinten kommen, also ist E minus eins, und minus fünf ist A, dein erster Buchstabe Lass mich das ausprobieren. Also A, eine negative Eins in eckigen Klammern ergibt den letzten Buchstaben und so weiter. Auch hier könnten Sie die n-Funktion so verwenden. Das wird dein erster Brief sein. Mit Index können Sie auf einzelne Zeichen zugreifen und auch Bereiche davon abrufen. Es heißt String Slicing und kommt als nächstes. Danke fürs Zuschauen 27. String Slicing 2024: Python ermöglicht auch eine Form der Indexierungssyntax, die Teilzeichenfolgen aus einer Zeichenfolge extrahiert Es wird als String-Slicing bezeichnet. Die Syntax, die Sie verwenden, ist der Indexierung sehr ähnlich Anstatt nur einen Wert in die eckigen Klammern zu setzen, setzen Sie zwei mit einem Doppelpunkt dazwischen In diesem Beispiel ist D also eine Zeichenfolge, und M und N sind zwei Werte, die einen Teil von D zurückgeben, beginnend mit der Position M bis zur Position N. Definieren wir die Zeichenfolge D für Avocado, aber nicht eingeschlossen . Definieren wir die Zeichenfolge D für Avocado. Sie, wenn Sie Index eins plus zwei, aber nicht einschließlich vier auswählen Was erhalten Sie, wenn Sie Index eins plus zwei, aber nicht einschließlich vier auswählen? VOC. Auch hier gilt: Null ist A, eins ist V, zwei ist O, drei ist C und vier ist ebenfalls A, aber ohne vier Was passiert also, wenn Sie das erste N oder den letzten Index weglassen? Wenn Sie den ersten Index weglassen, in diesem Fall A, Doppelpunkt und dann N, beginnt das Aufteilen am Anfang der Zeichenfolge und geht bis zum nicht berechneten Indexwert N hoch. Wenn Sie den letzten Index weglassen, wird dieser Abschnitt nicht vom ersten Index M bis zur Zeichenfolge erweitert dieser Abschnitt nicht vom ersten Index M beide Indizes weglassen, wird die gesamte ursprüngliche Zeichenfolge zurückgegeben Wenn Sie beide Indizes weglassen, wird die gesamte ursprüngliche Zeichenfolge zurückgegeben. Es ist keine Kopie. Es ist ein Verweis auf die ursprüngliche Zeichenfolge. Schauen wir uns diese in der Praxis an. Geben Sie D und Doppelpunkt zwei und es wird AV zurückgegeben. Bis zu fünf geben wir A VOCA zurück. Bis zum Ende kannst du das machen, indem du tippst. Eine andere Möglichkeit, dies zu tun, besteht darin, den Wert Ihres Startindexes einzugeben und dann die Längenfunktion als Ihren Endindex zu verwenden . Wenn Sie die Zeichenketten ohne Werte ausprobieren, beginnt der Vorgang vom Anfang bis zum Ende. Es ist ein Verweis auf die ursprüngliche Zeichenfolge. Negative Indizierung funktioniert ebenfalls. Sie können auch eine Kombination aus positiven und negativen Indizes erstellen Ich beginne mit einem negativen Index von fünf und gehe dann zu einem negativen Index über. Was bekommst du? Sie bekommen OCAD. Beim Slicing können Sie eine Zeichenfolge in einer Slice-Zeichenfolge angeben Es wird ein zusätzlicher Doppelpunkt hinzugefügt und ein dritter Index gibt an, wie hoch der Schritt Es wird auch der Schritt genannt. In diesem Fall würde unser Abschnitt also von den Anfängen ausgehen, gefolgt von Schritt zwei, mit dem allerersten Element beginnen, das Null und der Buchstabe A ist, und dann zwei Schritte überspringen, um den Buchstaben O zu finden gefolgt von Schritt zwei, mit dem allerersten Element beginnen, das Null und der Buchstabe A ist, und dann zwei Schritte überspringen, um den Buchstaben O zu , und dann weiterspringen, um Index vier zu holen, und dann zum Ende übergehen Was ist, wenn wir bei Schritt zwei Doppelpunkt eingeben? Es wird sich die Buchstaben AO AO schnappen. Sie können auch einen negativen Schritt machen. Das war's für heute. Ich hoffe, du verstehst, was String-Slicing ist. Danke fürs Zuschauen 28. ÜBUNG: String Slicing: In dieser Übung geht es darum, eine Zeichenfolge in Scheiben zu schneiden. Ihre Aufgabe besteht darin, die Zeichenfolge unter zu drucken, indem Sie die Slice-Notation verwenden , um den richtigen Zeichenbereich in der Zeichenkettenkiste anzugeben den richtigen Zeichenbereich in der Zeichenkettenkiste Sie beginnen also mit der Zeichenkettenkiste und schneiden diese Zeichenfolge dann ab, sodass nur der Teil herausgenommen wird, in dem Rata ta, lass uns gehen. 29. LÖSUNG: String Slicing: In Ordnung, ich habe mein Python im Leerlauf geöffnet. Meine Aufgabe ist es, eine Kiste zu zerschneiden, um Ratten zu bekommen. Also werde ich damit beginnen, die Zeichenfolge Crate einer Variablen zuzuweisen die Zeichenfolge Crate Also werde ich es in diesem Fall einfach Wort nennen. Okay, hier haben wir Crate, und dann verwende ich Slice-Notation, um den Ratten-Teil herauszuholen Und um die Slice-Notation zu verwenden, benutzt man eckige Klammern Innerhalb der eckigen Klammern müssen Sie die Indizes eingeben, die Sie verwenden möchten Die Zeichenkettenindizierung beginnt mit Null. Also C ist am Index Null, und dann habe ich R am Index eins Also kann ich mit einem beginnen. Und dann möchte ich in diesem Fall alles herausfinden, was mit Eins beginnt und bis zum Buchstaben T reicht , der in Index drei steht. Dies wird auch als Stopp-Index bezeichnet . Also kann ich das einfach machen, indem ich dort einen Doppelpunkt setze. Ich möchte hier einen großen, fetten Haftungsausschluss einfügen. Sie müssen eins plus das letzte Zeichen angeben , das Sie erhalten möchten. Ich möchte also zu Vier gehen, was der Index von E ist, und das bedeutet, dass ich alles auf E bringen werde . Das Wort eins, Doppelpunkt vier, sollte mir also die eigentliche Zeichenfolge geben , nach der ich suche, nämlich Rat. also das Wort einen Doppelpunkt vier eintippe, sollte ich nur die Zeichenfolge Rat heraussuchen. Und lassen Sie uns bestätigen, indem wir die Eingabetaste drücken. Hier ist es. Ich habe eine Ratte aus der Kiste geschnitten. Da hast du's Wenn Sie jedoch eine längere Zeichenfolge haben und alles bis zum letzten Zeichen bringen möchten , aber nicht bis zum letzten Zeichen, dann kann das Zählen auf diese Weise ziemlich schwierig werden. Stattdessen kannst du rückwärts gehen. Und Sie können auch Indizes zählen, die mit einem Minus beginnen. Der erste Wert wird also minus eins sein, und dann wird T minus zwei sein usw. Also kann ich stattdessen Wörter angeben, die bei eins beginnen und dann bis minus eins gehen, was das Gleiche bedeutet, als würde ich eins bis vier sagen Das ist also eine andere Art, einfach Ratte zu bekommen. Und jetzt habe ich zwei Möglichkeiten gefunden, ohne den letzten Charakter E auszukommen ohne den letzten Charakter E 30. String-Verkettung: Einige Operatoren können für numerische Operanden verwendet werden und können auch auf Zeichenketten angewendet werden In diesem Fall wird der Operator, der wie ein Pluszeichen aussieht, als Verkettungsoperator und als Multiplikationszeichenoperator betrachtet Verkettungsoperator und als Multiplikationszeichenoperator , der in Zeichenketten mehrere Kopien einer Zeichenfolge erzeugt Zu Beginn verkettet der Plus-Operator also Zeichenketten. Er gibt eine Zeichenfolge zurück, die aus den miteinander verbundenen Operanden Zuerst definiere ich einige Zeichenketten. Ein Äquivalent zu Apple. Das nächste String-Ziel, das wir erstellen werden , ist B, das gleich Banane ist. Und schließlich ist C gleich Kirsche. Was passiert also, wenn ich das Pluszeichen, den Verkettungsoperator, A plus B und Enter verwende den Verkettungsoperator, A plus B Lassen Sie uns alle drei Dinge kombinieren. Es wird alle drei verketten. Wir können Zeichenketten auch zu solchen Druckfunktionen verketten Zeichenketten auch zu solchen Druckfunktionen verketten M. Das ist also der Verkettungsoperator. Schauen wir uns den Multiplikationsoperator an, bei dem es sich um ein Sternchen handelt, das mehrere Kopien einer Zeichenfolge erzeugt, um eine Zeichenfolge zurückzugeben einer Zeichenfolge besteht Lass mich dir zeigen, wie es aussieht. Ich erstelle ein Objekt, D, das eine Ganzzahl ist , die fünf entspricht. Was passiert, wenn Sie A multiplizieren, D multiplizieren? Der Operator repliziert das String-Objekt also fünfmal und verkettet Der Multiplikator muss also eine Ganzzahl sein. Sie können beispielsweise nicht mit einer Fließkommazahl multiplizieren. Was ist, wenn es sich um eine negative Zahl handelt? Das wird eine leere Zeichenfolge zurückgeben. 31. ÜBUNG: String-Verkettung: Hier ist deine zweite Lektion zur Verkettung. Erstellen Sie zwei Zeichenketten, verketten Sie sie und drucken Sie die resultierende Zeichenfolge aus. Und dann ist da noch die Frage. Können Sie auch ein Leerzeichen zwischen ihnen hinzufügen, indem Sie nur Verkettung verwenden Wählen Sie also zwei Wörter aus, die Sie schon immer miteinander verbinden wollten Ich werde die Wörter Fledermaus und Mann wählen. Gehen Sie in Ihren Python-Editor und machen Sie es möglich. Fahren Sie danach der nächsten Lektion fort und schauen Sie mir dabei zu. 32. LÖSUNG: String-Verkettung: Die Aufgabe bestand darin, zwei Zeichenketten zu erstellen und sie Variablen zuzuweisen. Verketten Sie sie ohne Leerzeichen und verketten Sie sie mit Leerzeichen und verketten Beginnen wir damit, zwei Variablen zu erstellen, die zwei Ich beginne mit der Zeichenfolge underscore left , mit der ich auf eine Zeichenfolge verweisen werde, die so heißt Und dann mache ich noch eine Zeichenfolge mit einem Unterstrich nach rechts. Darauf werde ich zeigen, Mann. Und jetzt kann ich einen Call to Print nutzen , um diese beiden zusammenzufügen. Also öffne ich die Klammern nach dem Schreiben von print und gebe dann String underscore left plus string underscore right Schließe die Klammern. Wie Sie hier sehen können, verwende ich den Plus-Operator, der , wenn Sie ihn mit Zeichenketten verwenden, diese miteinander verkettet Es wird also buchstäblich Fledermaus und Mensch zusammenhalten , ohne dass ein Leerzeichen Ich drücke zur Bestätigung die Eingabetaste, und wir bekommen die Zeichenfolge Batman zusammengeklebt Die letzte Aufgabe bestand nun darin, sie mit einem Leerzeichen zu verketten. Also kopiere ich einfach meinen Anruf zum Drucken und springe in die Mitte des Ganzen neben dem Und hier füge ich noch eine weitere Zeichenfolge hinzu, ein Leerzeichen Also öffne ich die Anführungszeichen, füge ein Leerzeichen ein und schließe die Anführungszeichen dann wieder Das ist eine absolut gültige Zeichenfolge. Es ist nur eine Zeichenfolge, die nur aus einem Zeichen besteht, was in diesem Fall ein Leerzeichen ist. Auch hier verwende ich die Plus-Operatoren links und rechts, um diese drei Zeichenketten zusammenzufügen. Jetzt werde ich in iBressenter eine Saite Batman in einem bekommen, und das ist die Übung 33. String-Formatierung: Jetzt zeige ich Ihnen, wie Sie Zeichenketten mit dem Prozentoperator formatieren . Dies wird auch als prozentuale Zeichenkettenformatierung oder C-Stil bezeichnet . Die Syntax für die Verwendung des Prozentoperators lautet wie folgt. Syntax besteht aus drei Teilen: der Zeichenfolge in Anführungszeichen, dem Prozentoperator und Werten oder Variablen, die in eine durch Kommas getrennte Zeichenfolge eingefügt werden müssen eine durch Kommas getrennte Zeichenfolge Der erste Stempel besteht darin, die Zeichenfolge, die formatiert werden soll, in Anführungszeichen zu schreiben die Zeichenfolge, die formatiert werden soll, in Danach schreiben wir das Prozentzeichen. Und schließlich schreiben wir die Variablen oder Werte in Klammern. Das Prozentformat wird verwendet , um eine Zeichenfolge darzustellen, in diesem Fall Andreas. Das Prozentformat D steht für eine Ganzzahl, in diesem Fall 75 Kilogramm. Python Prince, ich heiße Andreas und wiege 75 Kilogramm. Sie können ein von mir erstelltes PDF herunterladen Es handelt sich um eine Liste vollständiger Symbolsätze , die zusammen mit Prozentwerten verwendet werden können. Sie finden es in Ihren Ressourcendateien. Anstatt den Prozentoperator zum Formatieren von Zeichenketten zu verwenden, bietet uns Python auch eine Formatierungsmethode zum Formatieren von Zeichenketten. Die Syntax ist das Zeichenkettenpunktformat, Werte oder Variablen, die in eine durch Kommas getrennte Zeichenfolge eingefügt werden sollen in eine durch Kommas getrennte Zeichenfolge Wenn wir die Formatmethode verwenden, verwenden wir weder Prozent S noch Prozent D als Platzhalter Stattdessen verwenden wir solche geschweiften Klammern. Zuerst schreiben wir die zu verwendenden Parameter position in die geschweifte Klammer, gefolgt von einem Doppelpunkt, und nach dem Doppelpunkt schreiben wir das Format ohne Leerzeichen innerhalb der ohne Leerzeichen innerhalb der Wenn wir Nullpunkt S schreiben, bitten wir den Interpreter, Nullpunkt S durch einen Parameter an der Nullposition zu ersetzen Nullpunkt S durch einen Parameter an der Nullposition , sodass es sich um eine Zeichenfolge handelt, weil der Formatierer S ist . Wenn wir einen Doppelpunkt D schreiben, beziehen wir uns auf den Parameter an Position eins, nämlich die Das Formatsymbol ist D. Beachten Sie, dass Positionen immer bei Null beginnen Das Ergebnis ist dasselbe wie oben. Wenn Sie die Zeichenfolge nicht formatieren möchten , können Sie einfach schreiben. A Der Interpreter ersetzt die geschweiften Klammern in der Reihenfolge der angegebenen Parameter Wir haben die Grundlagen der Methoden zur Zeichenkettenformatierung behandelt, die wir in der nächsten Lektion genauer kennenlernen werden die wir in der nächsten Lektion genauer kennenlernen werden. Danke fürs Zuschauen. 34. F-Strings: Eine verbesserte String-Formatierungssyntax: Okay, lassen Sie uns über F-Strings sprechen. Warum verwende ich also drei F-Strings in Python? Sie sind besser lesbar. Sie sind übersichtlicher, weniger fehleranfällig und schneller Aber ich beginne mit der Zeichenkettenformatierung der alten Schule, der Prozentformatierung, dem Zeichenkettenpunktformat Lassen Sie mich mit ein paar Beispielen beginnen. Öffnen Sie die Python-Shell. Lassen Sie uns eine Variable einrichten und ihr einen Namen geben. Zum Beispiel Alan. Verwenden Sie diese Variable in einer Zeichenfolge. Verwenden Sie Prozent a in Ihrer Zeichenfolge und am Ende derselben. Geben Sie den Prozentsatz und dann den Namen der Variablen ein. Angenommen, wir haben noch eine Variable. Jetzt haben wir zwei Variablen. Wir möchten zu unserer Zeichenfolge etwas hinzufügen. Das Gleiche gilt für den Namen. Und dann geben wir das Alter, Prozent und S ein. In diesem Fall haben wir also zwei Variablen , die wir eingeben werden. Geben Sie dazu Prozent und dann den Namen, Alter in Klammern, Was ist, wenn Sie viel mehr Variablen haben? Lassen Sie uns einige Variablen einrichten. Wenn man all diese in einer einzigen Zeichenfolge zusammenfasst, wird es langsam etwas chaotisch Wir müssen die Anzahl der Prozent S zählen , um sicherzugehen, dass wir sie in der richtigen Reihenfolge haben N , welche Sie ersetzen Am Ende müssen wir alle Variablen in Klammern setzen Ordnung. Es sieht richtig aus. Drücken Sie die Eingabetaste. Zum Glück gibt es bessere Möglichkeiten, dies zu tun. Lassen Sie uns über das Zeichenkettenpunktformat sprechen. Wir können Platzhalter in unserer Zeichenfolge in geschweiften Klammern setzen. Und ganz am Ende der Zeichenfolge würden wir Punktformat sagen, und dann könnten wir Argumente in Name und Wir können auch auf die Variablen in ihrem Index verweisen. Nehmen wir an, das ist Index eins und dieser ist Index Null. Und wir kehren Name und Alter in umgekehrter Reihenfolge um. Wir erhalten also das gleiche Ergebnis. Lassen Sie uns nun über eine neue und verbesserte Methode zum Formatieren von Zeichenketten in Python, F-Strings, sprechen. F-Strings werden auch als formatierte Zeichenkettenliterale bezeichnet und in der Python 3.6-Version erstellt Sie haben eine einfache Syntax. Sie werden zur Laufzeit ausgewertet und mithilfe des Formatprotokolls formatiert Lassen Sie mich Ihnen einige Beispiele zeigen. Lassen Sie uns drei Variablen einrichten. Name, Alter und Beruf, um eine Zeichenfolge in unseren geschweiften Klammern zu bilden Wir setzen unsere Ausdrücke ein. Und wenn Sie möchten, können Sie F am Anfang Ihrer Zeichenfolge verwenden . Nett und einfach. ich Ihnen nun die einfache Syntax von F-Strings gezeigt habe, lassen Sie uns über beliebige Ausdrücke sprechen. Sie können eine einfache Masse in geschweiften Klammern erstellen. Du kannst so etwas auch machen. Ich kann auch Funktionen und Methoden aufrufen, aber das sind Konzepte , die das später tun werden. Jetzt können wir auch mehrzeilige Zeichenketten erstellen. Dies ist hier eine mehrzeilige Nachricht. Wie sieht diese Nachricht aus? Geben Sie Nachricht ein. Denken Sie nur daran, dass Sie bei jedem dieser Ausdrücke das F setzen müssen bei jedem dieser Ausdrücke das F , um jeden dieser Ausdrücke in die Zeichenfolge einzugeben . Was ist mit Geschwindigkeit? F-Zeichenketten sind schneller als Prozentformatierung und das STR-Punktformat. Deshalb werde ich Ihnen einen Überblick über alles geben, was Sie in dieser Lektion behandelt und gelernt haben. Wir haben mit der ältesten Zeichenkettenformatierung begonnen, der prozentualen Zeichenkettenformatierung, auch C-Stil genannt. Danach begannen wir, über die Methode des Zeichenkettenpunktformats zu sprechen , die mit der Python-Version 2.6 begann. Und schließlich haben wir die neueste Methode zur Formatierung von Zeichenketten behandelt , die F-String, die mit der Python-Version 3.6 begann. Das war's für heute. Nochmals vielen Dank, dass Sie mich in dieser Lektion begleitet haben. Und ich hoffe, Sie können jetzt sehen, wie viel prägnanter, lesbarer, praktischer und schneller F-Strings sein können 35. ÜBUNG: Optimiere deine Drucke: In dieser Übung lernen Sie, Ihre Ausdrucke zu optimieren. Wie Sie bereits gesehen haben, kann das bloße Zusammenfügen etwas klobig werden Hier haben Sie also eine Übung, in Sie drei verschiedene Arten der Anzeige derselben Zeichenfolge ausprobieren können, indem Sie verschiedene Arten der Zusammenstellung der Zeichenkettenverkettung, das Zeichenkettenpunktformat und auch eine F-Zeichenfolge Zeichenkettenpunktformat und auch eine F-Zeichenfolge Die Aufgabe besteht darin, ein Float-Objekt mit dem Namen weight mit dem Wert 0,2 und anschließend ein String-Objekt namens animal mit dem Wert Anim zu erstellen und diese Objekte dann zum Drucken der folgenden Zeichenfolge namens animal mit dem Wert zu verwenden zu Zunächst sollte die Zeichenfolge also nur durch Verkettung sagen, dass 0,2 Kilogramm dem Gewicht eines Animums Und dann sollten Sie dieselbe Zeichenfolge mit der Punktformatmethode und leeren Platzhaltern in geschweiften Klammern anzeigen Punktformatmethode und leeren Platzhaltern in geschweiften Klammern Und schließlich mache ich dasselbe auch mit einer F-Zeichenfolge. Machen Sie weiter und lösen Sie diese Herausforderung für sich selbst, dann sehen wir uns in der nächsten Lektion. 36. LÖSUNG: Optimiere deine Drucke: Hier bin ich wieder in der interaktiven Shell, und die Aufgabe bestand darin, zunächst zwei Variablen zu definieren Eine hatte ein Gewicht , das 0,2 Fließkomma entsprach. Und dann war Tier die Zeichenfolge , die auf die Zeichenfolge Nim zeigen sollte Okay, fangen wir mit der Verkettung an. Ich werde es drucken, obwohl wir hier in der Konsole auch dann ein Ergebnis erhalten würden, wenn es nicht Aber bleiben wir dabei. Und auch hier muss ich den ersten in eine Zeichenfolge konvertieren, da dies derzeit ein Float ist. Wenn ich versuche, mit dem Plus-Operator einen Float und eine Zeichenfolge zusammen zu addieren , würde mir das einen Fehler geben, wie Sie zuvor gesehen haben. Also sage ich Zeichenkettengewicht, konvertiere es explizit in eine Zeichenfolge und dann Plus. Öffne doppelte Anführungszeichen und tippe. Ein Leerzeichen (Kilogramm) ist wieder das Gewicht des Leerzeichens, wieder doppelte Anführungszeichen. Und dann werde ich das wieder mit Tier verknüpfen . Es heißt also, 0,2 Kilogramm sind das Gewicht eines NM. Und dann sollte es am Ende wohl eine Frist geben, um daraus einen ordentlichen Satz zu machen Wenn ich hier die Eingabetaste drücke, siehst du, dass 0,2 Kilogramm das Gewicht des NM sind. Das ist also eine Lösung, die nur mit Strnkencnation und sonst nichts funktioniert nur mit Strnkencnation und Jetzt werden wir versuchen, die Punktformatmethode für die Zeichenfolge zu verwenden Punktformatmethode für die Also öffne ich wieder die Druckfunktion. Und jetzt kann ich die geschweiften Klammern als Platzhalter verwenden. Dies ist ein Ort, an dem ich etwas einfügen möchte. An der ersten Stelle möchte ich das Gewicht einfügen. Dann kommt wieder der mittlere Teil der Saite. Kilogramm ist das Gewicht von, und jetzt werde ich ein weiteres Paar lockige Zahnspangen verwenden , in die ich das Tier einsetzen werde Hier sollte Nim stehen, und dann kann ich dort einen Punkt setzen Und das ist sozusagen meine Zeichenkettenvorlage, in die ich diese beiden Variablen einfügen möchte , die ich zuvor finden muss Und das kann ich im Punktformat machen. Auf dieser Saite ist das Kilogramm der geschweiften Zahnspange also das Gewicht der Ich nenne das Punktformat. Und jetzt werde ich die beiden Variablen , die ich in die beiden Platzhalter einfügen möchte, hier weitergeben , die ich in die beiden Platzhalter einfügen möchte, hier In die erste möchte ich Gewicht und dann Tier eingeben Und es nimmt das erste Argument und fügt es in den ersten Platzhalter ein und dann das zweite Argument und dann das zweite Argument und fügt es in den zweiten Platzhalter Wenn ich jetzt also die Klammern für den Druckaufruf schließe und dann die Eingabetaste drücke, dann können Sie sehen, dass ich dieselbe Ausgabe wie zuvor erhalte So können Sie das also mit der Punktformat-Methode machen mit der Punktformat-Methode Sie können sehen, dass es dadurch bereits besser lesbar ist als nur die reine Zeichenkettenverkettung, und es erspart Ihnen den Aufwand, eine explizite Typkonvertierung für Objekte durchführen zu müssen , die keine Und jetzt wird meiner Meinung nach die F-String sogar noch etwas lesbarer sein Also eröffne ich wieder einen Call to Print. Und hier werde ich damit beginnen, F einzugeben und dann die Zeichenfolge zu öffnen , indem ich einfach zwei Anführungszeichen setze. Und ich werde wieder den Platzhalter für geschweifte Klammern verwenden. Aber anstatt es leer zu lassen, werde ich den Variablennamen direkt eingeben Also werde ich Gewicht sagen, und dann ist der mittlere Teil des String-Kilogramms das Gewicht von Öffnen Sie einen weiteren Satz lockiger Zahnspangen und geben Sie das Tier direkt in die lockige Klammer ein, und dann eine Und das ist alles, was Sie für die F-Saite tun müssen. Wenn ich jetzt Enter drücke, siehst du das wieder, du bekommst die gleiche Ausgabe wie in den beiden anderen Varianten. sind also drei verschiedene Arten, diese letzte Zeichenfolge zusammenzusetzen , die die Information enthält, die sowohl eine Zeichenfolge, die NEM-Zeichenfolge, als auch die Zeichenkettendarstellung einer Fließkommazahl In Ordnung, so können Sie das machen. Lass mich wissen, welcher dein Favorit ist. 37. Mit Benutzereingaben interagieren(): Um nützlich zu sein, muss das Programm normalerweise mit der Außenwelt kommunizieren indem es Eingabedaten vom Benutzer erhält und dem Benutzer die Ergebnisdaten anzeigt. Dieses Tutorial führt Sie die Python-Eingabe und -Ausgabe ein. Die Eingabe kann direkt vom Benutzer über die Tastatur oder aus einer externen Quelle wie einer Datei oder Datenbank erfolgen. Ausgabe kann direkt auf der Konsole oder der IDE auf dem Bildschirm über eine grafische Benutzeroberfläche oder erneut auf einer externen Quelle angezeigt dem Bildschirm über eine grafische Benutzeroberfläche werden. Programme müssen häufig Daten vom Benutzer abrufen, in der Regel durch Eingabe über die Tastatur. Der einfachste Weg , dies in Python zu erreichen , ist die Eingabe. Eingabe ist eine hervorragende Funktion in Python und wird häufig in der Programmierung verwendet. Es unterbricht Ihr Programm und wartet darauf, dass der Benutzer Text eingibt Sobald Python die Benutzereingabe empfängt, speichert es sie in einer Variablen. Lassen Sie uns einige Beispiele anführen. Typ. Sobald der Benutzer die Eingabetaste drückt, werden alle eingegebenen Zeichen gelesen und als Zeichenfolge zurückgegeben. Beachten Sie, dass die neue Zeile, die generiert wird, wenn der Benutzer die Eingabetaste drückt , nicht Teil der Rückgabezeichenfolge ist. Wenn Sie das optionale Argument prompt angeben, zeigt Input es dem Benutzer als Aufforderung an, bevor die rote Eingabe unterbrochen Die Eingabefunktion benötigt ein Argument. Die Anweisungen, die Sie dem Benutzer anzeigen möchten . Dann sieht der Benutzer die Eingabeaufforderung mit Ihrem Namen und wartet, bis der Benutzer seine Antwort eingibt , und fährt fort nachdem der Benutzer die Eingabetaste gedrückt Die Antwort wird in der variablen Nachricht gespeichert. Dann zeigt die Nachricht die Eingabe des Benutzers an. ist es besser, am Ende Ihrer Eingabeaufforderungen nach dem Fragezeichen ein Leerzeichen hinzuzufügen Ende Ihrer Eingabeaufforderungen nach dem unserem Beispiel ist es besser, am Ende Ihrer Eingabeaufforderungen nach dem Fragezeichen ein Leerzeichen hinzuzufügen, um die Aufforderung von der Antwort des Benutzers zu trennen Außerdem verwende ich doppelte Anführungszeichen, weil ich es bereits im Text zitiert Lass uns jetzt etwas anderes versuchen. Wir wollen eine Aufforderung schreiben, die länger als eine Zeile ist. Auf der ersten Folie wird der erste Teil der Nachricht mit der variablen Eingabeaufforderung gespeichert . In der zweiten Zeile werden der Operator die in einer Eingabeaufforderung gespeicherte Zeichenfolge hinzugefügt und am Ende die neue Zeichenfolge hinzugefügt. Der umgekehrte Schrägstrich N ändert die Zeile. Die Aufforderung wird dann in einem Variablennamen gespeichert und diese Variable an die Eingabefunktion übergeben Schließlich drucken wir den Text hoch, den Variablennamen und die Phrase „ Mein Name ist Roboter“. Wenn Sie sich die Codezeile genau ansehen, liegt der Syntaxfehler an den Anführungszeichen. Ich habe mit doppelten Anführungszeichen geöffnet und mit einfachen Anführungszeichen geschlossen. Lass mich das korrigieren. Großartig. Die Eingabe gibt immer eine Zeichenfolge zurück. Wenn Sie einen numerischen Typ wünschen, müssen Sie die Zeichenfolge mit den integrierten Funktionen NT, Float oder Complex in den entsprechenden Typ konvertieren mit den integrierten Funktionen NT, Float oder Complex in den entsprechenden Typ . Diese Zeile konvertiert N in eine Ganzzahl, sodass die Print-Anweisung erfolgreich ist Ich denke, Sie sind bereit, Benutzereingaben selbst etwas genauer zu untersuchen Hier sind ein paar Wiederholungsübungen für dich. Versuchen Sie , ein Programm zu schreiben, das Eingaben vom Benutzer entgegennimmt und diese Eingaben dann wieder anzeigt, so wie Sie es bereits getan haben, aber ändern Sie es ein wenig. Versuchen Sie, ein Programm zu schreiben , das Eingaben vom Benutzer entgegennimmt und diese Eingaben dann in Kleinbuchstaben anzeigt Versuchen Sie , ein Programm zu schreiben, das Eingaben des Benutzers entgegennimmt und dann die Anzahl der Zeichen anzeigt, wobei die Zeichen der eingegebenen Eingabe gezählt Wie immer finden Sie die Lösungen für diese Übungen und den Code in den Ressourcendateien dieser Lektion Ordnung. Als Nächstes wirst du anfangen, mit Zeichenketten und Zahlen zu arbeiten. 38. ÜBUNG: Interagiere mit Benutzereingaben: In dieser Übung wagen Sie sich in die Welt der Interaktion mit Ihren Benutzern Und in diesem Fall sollten Sie ein Programm schreiben, das Eingaben vom Benutzer entgegennimmt Eingaben dann wieder anzeigt, sie aber zuerst in Kleinbuchstaben umwandelt Wenn der Benutzer also Hallo in Groß- oder Kleinschreibung schreibt , sollte er es immer in Kleinbuchstaben zurückgeben, egal was er dort eingibt. Dann gibt es noch eine zusätzliche kleine Aufgabe, bei der Sie auch die Anzahl der Zeichen anzeigen können , die der Benutzer eingegeben Okay. Denk darüber nach. Nehmen Sie sich einen Moment Zeit, schreiben Sie es in Ihrem Editor oder in der REPL auf, fahren Sie dann der nächsten Lektion fort und vergleichen Sie es mit meiner Lösung 39. LÖSUNG: Interagieren mit Benutzereingaben: Um diese Übung zu lösen, müssen Sie die Eingabefunktion in Python verwenden, um die Benutzereingaben zu sammeln, und dann einige Zeichenkettenmethoden, um sie zu konvertieren. Und dann gibt es noch eine Funktion namens n , mit der Sie die Länge der Zeichenketten ermitteln können. Ich könnte das jetzt hier in Idle machen, und ich werde wahrscheinlich ein bisschen experimentieren. Aber ich habe auch eine Datei geöffnet , in der ich den Code schreiben werde, damit ich ihn um ein Vielfaches einfacher ausführen kann , ohne ihn jedes Mal eingeben zu müssen. Das gibt mir die Möglichkeit, tatsächlich auch zu testen und zu sehen, ob mein Skript funktioniert, nicht nur für eine Eingabe, sondern für die wiederholten verschiedenen Eingaben. Also werde ich den Code in das Skript schreiben, aber du kannst ihn auch über REPL schreiben, wenn du willst Dies sind die drei Aufgaben , die mein Skript erledigen sollte. Ich fange mit Nummer eins an, wo ich hier Eingaben mit einer kleinen Eingabeaufforderung verwende. Die Eingabeaufforderung wird sagen, geben Sie etwas ein. Und ich füge dieses Leerzeichen hier hinzu , um es ein bisschen schöner zu formatieren. Dann muss ich das Ergebnis sammeln. Also, wenn ich nur solche Eingaben ausführe, lass es uns hier in der REPL ausprobieren Ich erhalte die Aufforderung, etwas einzugeben. Und ich kann Hallo sagen und es wird zurückgegeben. Aber in meinem Drehbuch sammle ich es derzeit weder irgendwo noch hier in der Idol-Shell Ich habe es nirgends gesammelt, also muss ich es einer Variablen zuweisen, damit ich dann etwas damit machen kann, zum einer Variablen zuweisen, damit ich dann etwas damit machen kann, Beispiel es klein schreiben und es anzeigen und seine Länge ermitteln usw. Also zurück in meinem Editor in Zeile eins, werde ich sagen, dass Benutzereingaben durch Unterstriche dem Zurückgeben von Aufrufen von Eingaben entsprechen und was auch immer der Benutzer dann dort eingibt Und dann möchte ich es in Kleinbuchstaben umwandeln und anzeigen. Fangen wir also damit an Ich werde die Druckfunktion verwenden, indem ich print eintippe, die Klammern öffne und dann den Benutzerunterstrich mit einem niedrigeren Punkt einfüge Das ist also nur die Methode für eine Zeichenfolge mit einem niedrigeren Punkt , die Sie bereits einige Male verwendet haben und die Sie dem Benutzer mithilfe der Druckfunktion wieder anzeigen dem Benutzer mithilfe der Druckfunktion wieder Ich werde dieses Skript testen, indem ich es im Leerlauf ausführe. Sie können F 5 drücken, um es auszuführen , zu speichern und auszuführen. Also werden wir das tun. Wir können hier drüben sehen, ich werde aufgefordert, etwas einzugeben. Ich werde erneut versuchen, Hallo in Großbuchstaben zu sagen. Sie können sehen, dass mein Skript funktioniert. Ich erhalte dieselbe Zeichenfolge zurück, aber in Kleinbuchstaben. Ein weiterer Vorteil eines Skripts besteht darin, dass ich es einfach erneut ausführen kann ohne etwas anderes eingeben zu müssen Ich erhalte eine weitere Aufforderung und kann Groß- und Kleinschreibung ausprobieren. Hallo. Und wieder bekomme ich es einfach in Kleinbuchstaben zurück Also das funktioniert. Jetzt werde ich die Aufgabe in Zeile drei lösen und auch die Länge der Eingabe ausdrucken. Dafür kann ich einfach die Len-Funktion verwenden. Die Funktion len funktioniert so, dass sie eine Sammlung aufnimmt, zum Beispiel eine Zeichenfolge, und dann einfach die Anzahl der Elemente in dieser Sammlung zurückgibt. Wenn ich hier also eine Zeichenfolge einfüge und sage, hallo, erhalte ich fünf zurück, was der Anzahl der Zeichen entspricht. Eins, zwei, drei, vier, fünf. Also das ist genau das, was ich will. Und zurück in meinem Drehbuch werde ich Print sagen. Öffne die Klammern und dann sage ich Len , weil ich das ausdrucken möchte N als Argument, ich werde Benutzereingaben weitergeben Beachten Sie, dass die Benutzereingabe, die ich hier übergebe, tatsächlich die ursprüngliche ist. Es ist also nicht der Kleinbuchstabe, aber es spielt keine Rolle, da ein niedrigerer Punkt die Anzahl der Zeichen nicht ändert Es wird es wirklich nur klein schreiben. Sowohl die Version in Kleinbuchstaben als auch unabhängig von der vom Benutzer eingegebenen Version werden also der vom Benutzer eingegebenen Version dieselbe Anzahl von Zeichen haben Und jetzt werde ich das Skript erneut testen, indem ich es ausführe. Speichern und ausführen. Tippe etwas ein. Ich weiß bereits, dass Hallo fünf hat, also verwenden wir das und die Art Hallo in gemischter Groß- und Kleinschreibung. Drücken Sie die Eingabetaste. Und als Ausgabe erhalte ich die Kleinbuchstabenversion dieser Zeichenfolge und die Anzahl der Zeichen in dieser Zeichenfolge Großartig. Das löst alle drei Aufgaben hier. 40. Arbeiten mit Strings und Zahlen: Sie nun ein wenig mit Benutzereingaben gearbeitet haben, lassen Sie uns über die Arbeit mit Zeichenfolgen und Zahlen sprechen. Wenn Sie Benutzereingaben mithilfe der integrierten Eingabefunktion erhalten , ist das Ergebnis immer eine Zeichenfolge. Es gibt viele andere Situationen, in denen die Eingabe als Zeichenfolge an ein Programm übergeben wird. Manchmal enthalten diese Zeichenketten Zahlen, und sie müssen in Berechnungen eingespeist werden. In dieser Lektion lernen Sie, wie Sie mit Zahlenfolgen umgehen. Außerdem erfahren Sie, wie arithmetische Operationen mit Zeichenketten funktionieren und wie sie oft zu überraschenden Ergebnissen führen Dann lernst du, wie man zwischen Zeichenketten und Zahlentypen konvertiert zwischen Zeichenketten und Zahlentypen Fangen wir im interaktiven Fenster an. Probiere das aus. Ich lasse dich eine Variable namens Num erstellen. Dann weise ich ihr die Zeichenfolge mit der Zahl zwei zu. Das ist also Num mit einem String-Literal mit zwei darin. Was ist, wenn Sie die Plus-Operation verwenden und Num plus Num sagen? Was macht das? Sie haben vielleicht schon darüber nachgedacht, dass es sie miteinander verketten wird. Es ist nicht gleich vier, sondern zwei und zwei, was Nun, die Zeichenfolge 22, nicht die Zahl. Wenn Sie NUM nehmen und den Asterix, den Multiplikationsoperator , verwenden und sagen: Okay, multiplizieren Sie das mit fünf Nun, das sollte zehn ergeben, oder? Nun, in diesem Fall wird es eine Zeichenfolge erzeugen, in der die Zahl zwei fünfmal wiederholt wird. Sie erhalten also eine Reihe von fünf Zweien, zusammen verketten Wenn Sie die Zeichenketten mit arithmetischen Operatoren verwenden, können Sie jetzt feststellen, dass sie sich etwas anders verhält, als Sie vielleicht gedacht etwas Der Plus-Operator kann zwei Zeichenketten aneinanderreihen , wie Sie es zuvor geübt haben, und der Asterix- oder Sternmultiplikationsoperator und der Asterix- oder Sternmultiplikationsoperator erzeugt mehrere Kopien einer Zeichenfolge. Und es spielt keine Rolle, ob sich die Zahl auf rechten oder linken Seite des Ausdrucks befindet Angenommen, Sie waren sieben Mal taub, aber es sieht NUM immer noch als Zeichenfolge, und sieben ist einfach die Häufigkeit, mit der die Zahl innerhalb von Num , die Zeichenfolge, die sich in Num befindet, miteinander verkettet ist Du machst es tatsächlich mit anderen Dingen, oder? Du könntest fünfmal Hallo sagen. Eine Sache, die Sie tun können, ist, sagen wir, Sie haben die Zwölferfolge multipliziert mit der Dreierfolge gesagt multipliziert mit der Dreierfolge Dann geben wir Ihnen einen Tippfehler. Sie können diese beiden nicht miteinander multiplizieren , da es heißt, dass Sie eine Sequenz vom Typ Zeichenfolge nicht multiplizieren können. Die Sequenz, von der hier die Rede ist, ist die Zeichenfolge Eins, Zwei , also Rede ist, ist die Zeichenfolge Eins, Zwei , eine Folge von zwei Zeichen, und dann wird versucht, sie mit drei zu multiplizieren, was eine Zeichenfolge ist, die keine Ganzzahl ist. Also das funktioniert nicht. Es löst einen Typfehler aus. Und was wäre, wenn Sie die Reihe von Drei nehmen und versuchen würden, sie von selbst zur Zahl Drei zu addieren? Gibt eine andere Art von Typfehler an. Es besagt, dass Sie nur eine Zeichenfolge verketten können, keine Ganzzahl zu einer Zeichenfolge Wenn ein Objekt auf beiden Seiten des Pluszeichens eine Zeichenfolge ist, versucht Python, eine Zeichenkettenverkettung durchzuführen Es funktioniert nur zusätzlich, wenn es sich bei beiden Objekten Sie müssten die Zeichenfolge drei zuerst in eine Zahl umwandeln, bevor Sie sie zu drei addieren könnten. Schauen wir uns an, wie das geht. Was machst du also mit all diesen Zeichenketten, von denen du es vorziehen würdest, Zahlen zu sein? Sie werden dafür einige eingebaute Funktionen verwenden. Die INT-Funktion konvertiert Objekte in ganze Zahlen oder wird auch als Ganzzahl bezeichnet Manchmal möchten Sie, dass Objekte in Zahlen umgewandelt werden , die tatsächlich Dezimalstellen haben In diesem Fall sollten Sie die integrierte Float-Funktion verwenden. Lass uns diese ausprobieren. Um dies zu testen, kehren Sie zu Idle zurück und erstellen eine neue Datei. Sie können das Pulldown-Menü von Datei und Neu verwenden oder Sie können den Tastenbefehl Befehlstaste+N oder Strg+N unter Windows verwenden , um ein Bearbeitungsfenster zu öffnen. Hier im Bearbeitungsfenster erstellen wir ein Num-Objekt. Und es akzeptiert die Eingabe eines Benutzers. Und das ist die Aufforderung. Sie sagen, geben Sie eine Zahl ein, die verdoppelt werden soll. Schließ das. Also wird die eingebaute Eingabefunktion dazu auffordern, und dann wird der Wert, der eingegeben wurde, der Variablen NUM zugewiesen. Um dann eine doppelte Zahl zu erzeugen, werden Sie sagen, dass NUM mit zwei multipliziert wird. Dann die Druckausgabe. Großartig. Mach weiter und speichere das. Ich nenne es Double oder Double Dot Pi. Und nochmal, speichere es einfach auf meinem Desktop. Wenn Sie in diesem Fall F 5 drücken, um es hier zu wiederholen, Sie nach einer Zahl gefragt, die verdoppelt werden soll. Und ich werde sagen: Oh, sechs, bitte. Oh, siehst du meinen Fehler? Ich habe hier eine Variable mit dem falschen Namen erstellt. Ich habe nicht wieder den richtigen Namen verwendet, also muss ich ihn entweder hier oder dort ändern. Also werde ich ihn hier oder dort ändern und speichern. Also ein kleines Problem mit dem Namensfehler. Also gut. Jetzt, wo ich es gespeichert habe, können wir es erneut ausführen. Okay. Diesmal kann ich jetzt sechs eingeben. Anstatt sechs mal zwei von 12 zu bekommen, kriege ich 66. Also sechs und sechs, weil es das für zwei Saiten macht. Also müssen wir herausfinden, wie wir das ändern können. Öffne hier ein neues Shell-Fenster , um die Dinge ein bisschen aufzuräumen. Du kannst in deinem weitermachen. Ich möchte nur nicht so viel auf der Unterseite tippen müssen. Also, wie kannst du damit arbeiten? Also, wir hatten es vorhin mit der Nummer sechs zu tun. Was Sie auch hier tun können, anstatt nur mit der Zahl Sechs allein als Zeichenfolge zu arbeiten , ist, dass Sie eine Zeichenfolge wie Sechs in eine Ganzzahl umwandeln können . Und Sie können sehen, dass INT das hier in einen tatsächlichen Zahlenwert von sechs umwandelt. Es hat keine Anführungszeichen wie bei einem Zeichenkettenliteral INT steht für Integer und wandelt Objekte in ganze Zahlen um, wohingegen Float sie in eine Zahl mit Dezimalkomma umwandelt eine Zahl mit Dezimalkomma Wenn ich also Float für sechs verwenden würde, würden Sie 6.0 sehen. Okay, also was müssen wir tun? Nun, was wir tun können, ist es hier umzurechnen und INT für die Zahl zu sagen. Das ist eine Lösung. Lass es uns ausprobieren. Also habe ich es gerade nochmal gespeichert. Wenn ich F 5 drücke, um es auszuführen, Oh, dieses Mal sagen wir 12. Großartig. Dort ist 12 multipliziert mit zwei 24. Aber was wäre, wenn ich 2,5 eingeben wollte, ich weiß nicht Nun, dann müsste es schwimmend sein. Und es wäre nicht schlecht, wenn das 12 Punkte wären. Also vielleicht wäre es sicherer, je nachdem, was wir eingeben wollen. Etwas flexibler , stattdessen Float zu verwenden. Also mache ich das und lass es uns nach dem Speichern ausführen. Also, wenn ich, wie gesagt, 2,5 eingeben würde, Hoppla. Ich habe vergessen, den INT hier so zu ändern, dass er schwebt. Hast du meinen Fehler bemerkt? Ja. Lassen Sie uns jetzt noch einmal in Typ 2.5 laufen. Ich sage 5.0. Oder selbst wenn ich es erneut ausführen und 12 Punkt oh oder sogar 12 von alleine eingeben würde, wird es als Fließkomma zurückgegeben. Warum haben wir Float statt INT verwendet? Wenn Sie der eingebauten INT-Funktion etwas geben , das nicht in der Basis Zehn steht, wie wenn Sie 2,5 sagen würden, wird sie ein bisschen wütend. Es besagt, dass das ein ungültiges Literal für INT mit dieser Anforderung der Basis zehn Also, selbst wenn Sie 12 Punkt oh sagen würden, erhalten Sie dieselbe Art von Fehler Float bietet Ihnen also viel mehr Flexibilität, je nachdem, welche Zeichenfolge Sie eingeben. Manchmal müssen Sie eine Zahl in eine Zeichenfolge umwandeln. Um das umgekehrt zu machen, gibt es auch eine Funktion dafür. Lassen Sie mich Ihnen ein Beispiel geben. Nehmen wir an, wir führen wieder eine Verkettung durch. Nehmen wir an, wir haben eine Variable namens Anzahl Äpfel, und sie ist Du bist super hungrig und sagst, ich werde essen. Dann verkette die Anzahl der Äpfel zu einer anderen Zeichenfolge , in der Äpfel Drucken Sie das automatisch aus und fügen Sie die Zahl ein. Nun, Sie können nur eine Zeichenfolge, keine Ganzzahl, zu einer Zeichenfolge verketten keine Ganzzahl, zu einer Da die Variable num apples eine Zahl ist, kann Python sie nicht mit der anderen Zeichenfolge verketten Sie müssen die Ganzzahl Num Apples in eine Zeichenfolge umwandeln, und hier verwenden wir die eingebaute Genau wie INT und float gibt es eine eingebaute Funktion STR , die eine String-Version eines Objekts zurückgibt. Und hier können Sie die eingebaute STR-Funktion hinzufügen , die ein Objekt nimmt und es in eine Zeichenfolge umwandelt. Großartig. Mal sehen, ob das funktioniert. Jep. Das funktioniert super Was ziemlich cool ist, ist, dass die eingebaute STR-Funktion tatsächlich arithmetische Ausdrücke direkt darin verarbeiten kann tatsächlich arithmetische Ausdrücke direkt darin verarbeiten direkt darin Nehmen wir an, Sie hatten insgesamt vier Äpfel. Und so viele hast du bisher gegessen, also zwei. Also haben wir zwei Variablen zugewiesen, Gesamtzahl der Äpfel der Ganzzahl Vier und die verzehrten Äpfel der Ganzzahl Zwei. Und Sie möchten eine Zeichenfolge erstellen, die besagt, dass nur Leerzeichen verketten können Und dieses Mal konvertieren Sie in eine Zeichenfolge. Und Sie sagen die Gesamtzahl der Äpfel minus die Äpfel , die gegessen wurden, und das gegessen wurden, und , um die Anzahl der übrig gebliebenen Äpfel I Also es kann diese Subtraktion genau da drinnen machen Schauen wir uns einige zusätzliche Übungen an mit denen Sie üben können. Übung eins. Erstellen Sie eine Zeichenfolge, die eine Ganzzahl enthält, konvertieren Sie diese Zeichenfolge dann mithilfe der integrierten INT-Funktion in eine tatsächliche Ganzzahl. Testen Sie, ob Ihr neues Objekt eine Zahl indem Sie es mit einer anderen Zahl multiplizieren und das Ergebnis Übung zwei. Probieren Sie die vorherige Übung erneut aus, verwenden Sie jedoch eine Fließkommazahl und die integrierte Gleitkommafunktion. Übung drei. Versuchen Sie, ein String-Objekt und ein Integer-Objekt zu erstellen. Zeigen Sie sie dann mit der String-Funktion Seite an Seite mit einem einzigen Ausdruck an. Übung vier. Okay. In diesem Fall verwenden Sie die Eingabe zweimal, um zwei verschiedene Zahlen von einem Benutzer zu erhalten, multiplizieren die Zahlen dann miteinander und zeigen das Ergebnis an. Der Ausdruck sollte ungefähr so aussehen. Die Lösungen für diese Übungen und den Code finden Sie in den Ressourcendateien dieser Lektion Als Nächstes werden Sie lernen, wie Sie Ihre Druckfunktion optimieren können 41. ÜBUNG: Mit Strings und Zahlen arbeiten: Und Sie werden mit einigen weiteren Eingabeübungen fortfahren. Diese Methode heißt Arbeiten mit Zeichenketten und Zahlen. Schreiben Sie ein Programm, das die Eingabefunktion zweimal verwendet , um zwei Zahlen vom Benutzer zu erhalten, die Zahlen miteinander zu multiplizieren und das Ergebnis anzuzeigen Wenn der Benutzer beispielsweise zwei und vier eingibt, sollte die neue Eingabe den folgenden Text drucken Das Produkt von Zwei und Vier ergibt acht Punkt Null. Was Sie hier sehen können, ist, dass das Ergebnis als Fließkommazahl angezeigt werden sollte. Und denken Sie dann daran, dass die Eingabefunktion immer eine Zeichenfolge erstellt, mit der Sie bestimmte Zeichenketten mithilfe der Funktionen int und Float in tatsächliche Zahlen umwandeln können, und dass Sie mit der Zeichenkettenfunktion STR Zahlen in Zeichenketten konvertieren können . Sie müssen also Benutzereingaben sammeln, dann die Konvertierung eingeben und dann auch ein bisschen rechnen und sie dem Benutzer anzeigen. Probieren Sie es selbst aus, und wenn Sie möchten, können Sie sich dann die nächste Lektion ansehen, in der ich die Aufgabe lösen werde. 42. LÖSUNG: Mit Strings und Zahlen arbeiten: Ich habe eine neue Datei geöffnet und ein paar Notizen für die Anweisungen aufgeschrieben . Ich möchte zwei Zahlen vom Benutzer erhalten, sie multiplizieren und dann das Ergebnis anzeigen. Das sind die Dinge, die ich bei dieser Multiplikation machen möchte. Da ist tatsächlich noch ein weiterer Schritt drin. Ich werde sie auch in Zahlen umwandeln wollen. Ich kann das also irgendwann machen, aber ich muss es tun, bevor ich sie multipliziere. Und das liegt daran, dass man zwei Zeichenketten nicht wirklich miteinander multiplizieren kann. Das wird einfach ein Fehler sein. Also springe ich rüber zur REPL, nur um dir das zu zeigen. Wenn ich zwei Zeichenketten habe und versuche, sie miteinander zu multiplizieren, erhalte ich einen Typfehler, dass Python Sequenzen nicht mit Non-Int vom Typ string multiplizieren kann . Das ist eine gut beschreibende Nachricht , die mir nur sagt, dass das nicht funktioniert Aber wenn Sie Benutzereingaben sammeln, wird es immer eine Zeichenfolge sein, auch wenn der Benutzer eine Zahl eingibt. Probiere das auch aus. Also werde ich den Rückgabewert der Eingabe A zuweisen . Ich werde hier nur eine leere Eingabeaufforderung geben. Also die Aufforderung, sie fordert mich jetzt auf, etwas einzugeben Wenn ich hier vier eingebe. Ich denke also, dass ich eine Zahl eingebe. Was ich als Ergebnis erhalte, ist immer noch eine Zeichenfolge. Wie Sie sehen können, ist es eine Klasse STR. Es sieht so aus. Wenn Sie also Benutzereingaben sammeln, werden sie immer als Zeichenfolge ankommen. Und wenn Sie dann versuchen, zwei Zeichenketten miteinander zu multiplizieren, werden Sie auf einen Fehler stoßen. Aber nebenbei gibt es ein bisschen Spaß. Wenn Sie ein anderes Programm mit einer festen Ganzzahl hätten, mit der Sie die Benutzereingabe multiplizieren, sagen wir, dann könnten Sie, wenn Sie hier keine Typkonvertierung durchführen, auf eine Ausgabe stoßen, die Sie vielleicht nicht erwarten Wir haben eine, die auf vier hindeutet, richtig? Und nehmen wir an, das Programm multipliziert die Eingabe eines Benutzers mit 20, richtig? In diesem Fall erhalten Sie also eine Verkettung von Zeichenketten. Python verkettet die Eingabezeichenfolge 20 Mal. Sie erhalten also 20 Vieren als Ausgabe, was ein seltsames Rechenergebnis wäre, wenn man vier was ein seltsames Rechenergebnis wäre macht Um das zu vermeiden, müssen Sie es also explizit konvertieren. Sie könnten zum Beispiel A in eine Ganzzahl umwandeln und dann die Multiplikation durchführen, und das funktioniert, oder? Das funktioniert richtig und Mathe macht wieder Sinn. Das ist nur, um zu bedenken, dass Sie diese Zahlen umrechnen müssen. Lassen Sie uns damit beginnen, die beiden Zahlen vom Benutzer zu sammeln. Kehren wir zu unserem Editor zurück und fahren wir mit Zeile zwei fort. Buchstabe A ist eingegeben. Öffnen Sie nun Klammern in doppelten Anführungszeichen und geben Sie ein. Geben Sie eine Zahl ein. Geben Sie ihnen eine Aufforderung, die Zahl etwas lesbarer zu machen , und wiederholen Sie dann dasselbe für eine andere Zahl. Ich würde sagen, B ist Eingabe. Geben Sie dann ein, geben Sie eine andere Zahl ein. Dann möchte ich sie in Zahlen umwandeln, damit ich sie multiplizieren kann. Ich mache es in einem Schritt. Also werde ich in Floats umwandeln, weil ich in der Ausgabe Floats haben möchte Das heißt also, sowohl A als auch B explizit in Fließkommazahlen umzuwandeln und diese dann einer Variablen namens product zuzuweisen Hier mache ich die Konvertierung und die Multiplikation in einem Schritt Und dann muss ich endlich das Ergebnis anzeigen. Ich werde das einfach mit der Verkettung von Zeichenketten machen, was, wie Sie sehen werden, ziemlich lang werden wird Sie sind wahrscheinlich schon auf einen besseren Weg gestoßen einen besseren Weg Aber vorerst bleiben wir einfach bei der Verkettung von Zeichenketten, weil ich Ihnen auch etwas zeigen möchte , das der Multiplikation ähnelt und mit zwei Zeichenketten nicht funktioniert Sie können keine Verkettung durchführen wenn Um also diese Nachricht, das Produkt von hier, anzeigen zu können, kannst du einfach die Variable verwenden, die ich gesammelt habe, weil A eine Zeichenfolge ist Ich wandle es nur bei der Multiplikation in eine Fließkommazahl um A zeigt also immer noch auf die ursprünglich eingegebene Zeichenfolge. Ich kann also sagen, das Produkt von A und B ist Und wenn ich das Produkt hier einfach ohne Konvertierung hinzufüge, würde ich wieder auf einen Fehler stoßen. Lass uns das auf der Konsole ausprobieren. Also hier versuche ich eine Zeichenfolge und eine Fließkommazahl zu verketten Also ist es hier drüben markiert. Ich sage: A, das ist meine Zeichenkette plus eine Fließkommazahl, 0,2. Und Sie können sehen , dass Python erneut einen Typfehler ausgibt, in dem es Ihnen sagt, dass es nur Zeichenketten zu Zeichenketten verketten kann ausgibt, in dem es Ihnen sagt, dass es nur Zeichenketten zu Zeichenketten verketten und keinen Float zu einer Zeichenfolge Um also Produkt in die Zeichenfolge einfügen zu können , die Sie hier verketten, müssen Sie es explizit in eine Zeichenfolge konvertieren, indem Sie die STR-Funktion verwenden und Damit wird es klappen. Und Sie können auch weiterhin eine weitere Zeichenfolge hinzufügen, was in diesem Fall nur ein Punkt ist. In Ordnung. Also das ist ein sehr, sehr langer Weg, diese Nachricht zusammenzustellen, im Grunde nur mit Zeichenkettenverkettung Aber lassen Sie uns es versuchen und sehen, ob es funktioniert. Ich speichere und starte es. Geben Sie Nummer zwei ein, geben Sie eine weitere Zahl vier ein, und das Produkt aus zwei und vier ist 8,0. Ich erhalte also die erwartete Ausgabe. Das Ergebnis der Eingabe sieht aus wie eine Fließkommazahl. Aber hier im Print-Aufruf konvertieren Sie es in eine Zeichenfolge, bevor es mit anderen Teilen der Zeichenfolge, die Sie zusammenstellen, verketten der Zeichenfolge, die Sie zusammenstellen, Wenn Sie das Punktformat oder eine F-Zeichenfolge für die endgültige Nachricht verwendet haben , ist das auch ein guter Weg Wenn Sie also bis jetzt mit der Verkettung von Zeichenketten nicht weiterkommen, haben Sie die Möglichkeit, etwas Neues auszuprobieren 43. Print() Formatierungsmethoden: Hallo zusammen und willkommen zurück zum Kurs. In dieser Lektion werde ich etwas mehr Zeit damit verbringen, Zeichenketten zu formatieren , sodass Sie kompliziertere Nachrichten innerhalb Ihrer Druckfunktion erstellen können . Zunächst können Sie zwei Zeichenketten zusammenfassen, um eine dritte zu erstellen. Hello plus world würde einer dritten Zeichenfolge namens Hello World führen. In Python muss man etwas vorsichtig sein. Dadurch wird die Zeichenfolge nicht wirklich bearbeitet. Es erstellt eine dritte brandneue Zeichenfolge. Dadurch kann die Bearbeitung von Zeichenketten etwas speicherintensiv und leistungsschwach werden. Im Laufe der Jahre hat Python verschiedene Möglichkeiten zur Manipulation von Zeichenketten hinzugefügt verschiedene Möglichkeiten zur Manipulation von Zeichenketten Die erste Methode ähnelt C und unterstützt die Prozent-Notation Die zweite enthält Platzhalter mit geschweiften Klammern, und die dritte, die relativ neu ist, ist eine F-Zeichenfolge Wir haben diese drei Methoden bereits besprochen als wir etwas über Zeichenketten gelernt haben Jetzt zeige ich Ihnen, wie Sie diese Formatierungsmethoden in die Druckfunktion einbetten können. Im Allgemeinen wird empfohlen, die F-Zeichenfolge so oft wie möglich zu verwenden, aber es gibt immer noch einige Fälle, in denen C-Stil wichtiger sein könnte. Ich zeige Ihnen jetzt, wie Sie diese beiden im Terminal verwenden . Ich werde damit beginnen, hier ein paar Variablen zu erstellen. Vorname. Nachname, Alter. Und das erste Formatierungsbeispiel ist Prozent S. Der Prozentsatz wie in dieser Zeichenfolge ist ein Platzhalter dafür , wo der Inhalt eingefügt werden soll Die Prozentzahl am Ende der Zeichenfolge gibt an, was eingefügt werden soll. In diesem Fall wird der Wert der Nachnamen in die Zeichenfolge eingefügt Sie können mehrere Prozent in ein Format einfügen. Um das zu tun , müssen Sie der Zeichenfolge statt eines einzelnen Werts ein Turple übergeben Zeichenfolge statt eines einzelnen Werts ein Turple Beachten Sie, dass Sie, wenn Sie den Nachnamen zweimal verwenden möchten, die 2% S verwenden müssen, einen für jede Instanz des Nachnamens und die Variable zweimal innerhalb der Tupel Prozent S besagt, dass Sie eine Zeichenfolge eingeben werden Prozent D besagt, dass Sie eine Ganzzahl eingeben werden. Prozent F steht für Gleitkommazahlen. Geben Sie ein Die Zahl wurde um 3,14 gekürzt. Warum ist das so? Lass es uns hier erklären. Die erste Zahl ist die Gesamtzahl der Ziffern, die die Zeichenfolge mindestens enthalten sollte. Die Zahl danach ist die Dezimalzahl. Es steht für, wie viele Zahlen nach dem Komma angezeigt werden sollen? Deshalb ist das Ergebnis 3,14. Wenn ich das also auf drei ändern würde, würde es 142 anzeigen Wenn ich daraus eine große Zahl mache, zum Beispiel acht, werden die restlichen Zahlen mit Nullen gefüllt die restlichen Zahlen mit Nullen Jetzt ändern wir die erste Zahl. Sagen wir 20 und führen das Programm aus. Beachten Sie, wie wir ein paar Leerzeichen füllen. Erinnern wir uns nun daran , wie man in eine Zeichenfolge konvertiert. Wir könnten auch ein Prozentzeichen R verwenden, das dasselbe mit dem Prozentzeichen S macht. Lassen Sie uns ein weiteres Beispiel mit mehreren Prozentzeichen machen. Python wird sie der Reihe nach ordnen. Die erste Prozentseite wird dem ersten Element zugewiesen, und das zweite Prozentzeichen wird dem zweiten Element zugewiesen. Okay, jetzt machen wir dasselbe Beispiel mit dem zweiten Formatmethodentyp. Und ich werde hier geschweifte Klammern verwenden und eine beliebige Variablenebene angeben Zum Beispiel schließt X mit Anführungszeichen und dann mit einem Punkt und ruft die Formatmethode für diese Zeichenfolge auf Dann die Variable X und mein Name als Zeichenfolge. Nett. Lassen Sie uns diesen Code ändern den folgenden Satz und eine zweite Variablenbezeichnung hinzufügen. Warum zum Beispiel? Python drei führte das Konzept einer F-String ein. Das F vor der Zeichenfolge zeigt an, dass es sich um eine Formatierungszeichenfolge handelt. Geschweifte Klammern geben nun an , wo die Injektion platziert werden soll. Dies entspricht dem ersten Beispiel. Ich finde diesen Mechanismus viel einfacher zu lesen, besonders wenn Sie mehrere Variablen haben. Formatzeichenfolgen unterstützen die Berechnung. Sie unterstützen auch die Formatierung. Lassen Sie uns ein neues Shell-Fenster öffnen und das erste Modul math importieren, das erste Modul math importieren, das Zugriff auf mathematische Funktionen bietet. Innerhalb der geschweiften Klammern setzen Sie einen Doppelpunkt, der auf Ihren Formatierungsmechanismus hinweist Ups, ich habe vergessen, die Variable Alter zu definieren. Die 0,2 F sind den obigen 0,2 F ähnlich, was uns das Alter von Alan Turing mal Pi auf zwei signifikante Stellen ergibt Pi auf zwei signifikante Stellen Großartig. Nehmen Sie sich Zeit und schauen Sie sich die Vorlesung genau an. Wenn Sie Fragen haben, stellen Sie diese bitte im Q&A-Diskussionsforum. Danke fürs Zuschauen 44. Einen String in einem String finden: Sie nun herausgefunden haben, wie Ihre Ausdrucke mit F-Strings optimieren können, ist es wichtig, eine Zeichenfolge innerhalb einer Zeichenfolge zu finden Eine der nützlichsten Zeichenkettenmethoden ist Find. Wie der Name schon sagt, können Sie mit dieser Methode die Position einer Zeichenfolge innerhalb einer anderen Zeichenfolge ermitteln, üblicherweise als Teilzeichenfolge bezeichnet wird Um Find zu verwenden, fügen Sie es an das Ende einer Variablen oder eines Zeichenkettenliterals an, wobei die Zeichenfolge , nach der Sie suchen möchten, zwischen den Klammern eingegeben wird Der Wert, den Find zurückgibt, ist ein Index des ersten Vorkommens der Zeichenfolge, die Sie an Find übergeben Schauen wir uns das im interaktiven Fenster an. Lass uns mit einem Satz beginnen. Die variable Phrase wird also dem String-Literal zugewiesen Der Feueralarm piept ständig. Wenn Sie statt der Klammern die Fine-Methode verwenden würden , wählen Sie aus, nach welcher Teilzeichenfolge Sie innerhalb der Zeichenfolge suchen In diesem Fall sagen wir also, suchen Sie nach Feuer. Lass uns tippen. Satz bei finden, Feuer in doppelten Anführungszeichen, runde Klammern schließen Es gibt den Index des ersten Vorkommens der Teilzeichenfolge innerhalb der Zeichenfolge zurück In diesem Fall ist es also der vierte Indexpunkt. Also hier sind Null, Eins, Zwei, Drei, Vier. Ich weiß, dass das die fünfte Position ist, aber ich beginne wieder bei Null, Null, Eins, Zwei, Drei, Vier. Da fängt das an. Toll. Was ist, wenn die Teilzeichenfolge nicht in der Zeichenfolge existiert? Geben wir die Phrase Punkt Find in ein zufälliges Wort ein. Sie erhalten eine negative Eins zurück, was bedeutet, dass es nicht gefunden wurde. Als Hinweis: Vergessen Sie nicht, dass es voraussetzt, dass die Groß- und Kleinschreibung übereinstimmt. Also wenn ich ihm ein F für Feuer gebe, es einen negativen Wert zurück. Versuchen wir es mit einem anderen Beispiel. Ich nenne es einen neuen Satz. Und es wird so sein, als würde ich eine Zeichenfolge in deine Zeichenfolge einfügen. In diesem speziellen Fall, wenn Sie sagen, dass eine neue Phrase nicht gefunden wird, was erhalten Sie, wenn Sie eine Zeichenfolge eingeben? In diesem Fall ist es also nur das erste Vorkommen. Das zweite wurde nicht zurückgegeben . Dadurch wird nur der Index des ersten Vorkommens zurückgegeben, beginnend mit dem Anfang der Zeichenfolge. Und beachten Sie, wenn Sie eine Zeichenfolge hatten, sagen wir eine Telefonnummer. Wenn Sie versuchen, die Zahl Vier zu finden, wie in diesem Fall eine Ganzzahl, erhalten Sie einen Fehler. Hier im Feedback heißt es, es ist ein Typfehler. Der Wert muss eine Zeichenfolge sein, keine Ganzzahl, nach der gesucht werden soll. Sie müssten also eine Literalzeichenfolge von vier finden , und sie steht genau am Anfang, Index Null Manchmal möchten Sie vielleicht alle Vorkommen einer bestimmten Zeichenfolge innerhalb einer Zeichenfolge ersetzen alle Vorkommen einer bestimmten Zeichenfolge innerhalb einer Zeichenfolge Da find den Index des ersten Vorkommens einer Teilzeichenfolge zurückgibt , können Sie ihn nicht einfach verwenden, um diesen Vorgang auszuführen Zeichenketten verfügen jedoch über eine Ersetzungsmethode, die jede Instanz einer Teilzeichenfolge durch eine andere Zeichenfolge ersetzt Teilzeichenfolge durch eine andere Zeichenfolge ersetzt Genau wie bei dieser Methode find fügen Sie replace an das Ende einer Variablen oder eines Zeichenkettenliterals In diesem Fall müssen Sie jedoch zwei Zeichenketten in die Klammern setzen und sie durch ein Komma trennen. erste wäre die Teilzeichenfolge , die Sie suchen möchten, und die zweite ist eine Zeichenfolge, durch die Sie die Ido-Ströme der Teilzeichenfolge ersetzen möchten Lassen Sie uns das im interaktiven Fenster ausprobieren. Also, genau wie bei find, taggen Sie die Methode replace am Ende der Variablen oder des String-Literals Lass uns das ausprobieren. Nehmen wir an, wir hätten eine Variable namens Meine Geschichte. Okay. Und in diesem Fall wollten Sie es mit Punkt Replace ersetzen. Und Sie können hier sehen, dass es heißt, geben Sie die alte Zeichenfolge ein, was bedeutet, dass die Teilzeichenfolge, nach der Sie gesucht haben , durch die neue Zeichenfolge ersetzt werden soll Also sage ich, suche nach der Wahrheit und ersetze sie durch Lügen. Also, wie cool ist das? Nun, was mit meiner Story selbst passiert ist , Sie erinnern sich vielleicht daran, dass Zeichenketten unveränderliche Objekte sind und replace die Variable my story nicht verändert Und die Verwendung der Replace-Methode ändert nichts an der Zeichenfolge „Meine Geschichte“ Wenn Sie sofort my story in das interaktive Fenster eingeben , werden Sie feststellen, dass Sie, wenn Sie den Wert der Zeichenfolge my story ändern möchten, ihn neu zuweisen müssen Also, noch einmal, eine kleine Auffrischung dazu, Sie würden sagen, ich würde meine Geschichte gerne, in diesem Fall, diesem Ersatz zuweisen in diesem Fall, diesem Ersatz Also würdest du sagen: Nehmen wir an, wir wollen dasselbe tun und die Wahrheit gegen Lügen eintauschen Also, was steckt in meiner Geschichte? Sie werden hier sehen, dass es geändert und neu zugewiesen wurde. Replace ersetzt jede einzelne Instanz der Teilzeichenfolge durch den Ersatztext Was wäre, wenn du eine andere Zeichenfolge hättest, die einigen Dingen zugewiesen wäre die einigen Dingen zugewiesen Also hier ist der Text, und du wolltest eine neue Version des Textes. Und du wolltest ein paar Ersatzartikel machen. Angenommen, Sie wollten einige durch alle ersetzen , aber Sie wollten auch Dinge durch Dinge ersetzen Nun, du müsstest sie nacheinander machen. Also, neuer Text sagt alles, und du könntest sagen, okay, nun, neuer Text. Ich möchte auch, dass neuer Text nichts ersetzt, Koma. Jetzt hast du also beides erreicht. Die Ersetzungsmethode ersetzt jede Instanz einer bestimmten Teilzeichenfolge durch einen Ersatztext Wenn Sie nun mehrere verschiedene Teilzeichenfolgen innerhalb einer Zeichenfolge ersetzen möchten , müssen Sie replace mehrmals verwenden Es ist an der Zeit, sich mit einigen neuen Wiederholungsübungen selbst herauszufordern . Übung eins. in einer Codezeile Zeigen Sie in einer Codezeile das Ergebnis der Suche nach der Teilzeichenfolge mit dem Kleinbuchstaben A in der Dreierfolge an. Beachten Sie, dass das Ergebnis negativ sein sollte Übung zwei: Ersetze jedes Vorkommen des Zeichens S durch X. In dieser Zeichenfolge hat jemand etwas zu John gesagt Übung drei: Schreiben Sie ein Programm , das Benutzereingaben mit Eingaben akzeptiert und dann das Ergebnis der Suche nach einem bestimmten Buchstaben in dieser Eingabe anzeigt . Die Lösungen für diese Übungen und den Code finden Sie in den Ressourcendateien dieser Lektion. Danke fürs Zuschauen. 45. ÜBUNG: Einen Buchstaben in einer Zeichenfolge finden: Ihre nächste Übung heißt Finden Sie einen Buchstaben in einer Zeichenfolge. Hier sollten Sie ein Programm schreiben, das Benutzereingaben mit der Eingabefunktion akzeptiert und das Ergebnis des Versuchs anzeigt , einen bestimmten Buchstaben in dieser Eingabezeichenfolge mithilfe der Punktsuche zu finden. Welcher Buchstabe ist hier nicht definiert. Es scheint also, als ob dies eine weitere Eingabe sein wird, wahrscheinlich vom Benutzer, oder vielleicht ist es einfach keine sehr gute Beschreibung. Wie dem auch sei, ich werde diese Beschreibung hinzufügen, sodass der Benutzer in der Lage sein sollte, sowohl das Wort oder den Satz als auch den Buchstaben einzugeben , nach dem in diesem Satz gesucht werden soll. Okay, probieren Sie es aus und fahren Sie dann mit der nächsten Lektion fort. 46. LÖSUNG: Einen Buchstaben in einer Zeichenfolge finden: der Aufgabe ging es also darum, ein Programm zu schreiben, was normalerweise ein Hinweis darauf ist , dass Sie dafür ein Skript verwenden sollten. Also habe ich wieder ein neues Skript geöffnet und es dann in Form von kurzen Notizen zusammengefasst. Ich möchte Eingaben sammeln und dann die Ergebnisse der Suche nach einem Buchstaben anzeigen. Beginnen wir damit, Eingaben zu sammeln und diese dann irgendwo zu speichern. Mein Text wird also eingegeben, gib einen Buchstaben ein. Dann möchte ich dieses Ergebnis der Suche nach einem Buchstaben in diesem Text anzeigen . Also möchte ich Text Dot Find sagen. Und dann ein Brief. Was ist der Brief? Ich weiß es nicht. Ich könnte hier einfach nach einem fest codierten Buchstaben suchen , zum Beispiel X, und dann das Ergebnis ausdrucken. Lass uns das mal ausprobieren. Ich werde es speichern und ausführen. Jetzt kann ich einen Text eingeben. Ich werde Virginia retten und erhalte minus eins, weil es in Virginia kein X gibt. Wenn ich das Skript jetzt erneut ausführe und es mit einem Text versuche , der ein X enthält, zum Beispiel Xavier, dann erhalte ich Null Es findet also X an der ersten Position. Also das funktioniert mit X, aber ich finde das nicht großartig. Wenn es immer nach X sucht, ist es vielleicht ein bisschen langweilig. Stattdessen werde ich dies ändern, damit der Benutzer auch eingeben kann, nach welchem Zeichen gesucht werden soll. Also erstelle ich eine weitere Variable , die ich Charakter nenne. Und das wird ein weiterer Aufruf zur Eingabe sein. Und dann sage ich „ Zeichen eingeben“, nach dem gesucht werden soll. Schließlich muss ich auch das Argument für Text Fine durch Character ersetzen . Was dann bedeutet, dass es unabhängig von der Benutzereingabe sein wird. Technisch gesehen könnte diese Benutzereingabe mehr als ein einzelnes Zeichen sein. Punktsuche funktioniert mit Teilzeichenfolgen, sodass Sie mehr als ein Zeichen als Teilzeichenfolge eingeben können , nach der gesucht werden soll Wenn Python die Teilzeichenfolge findet, gibt es den Index des Anfangs zurück dem die Teilzeichenfolge zuerst in der Zeichenfolge auftaucht Aber für diese Übung müssen Sie sich darüber keine Gedanken machen Sie gehen davon aus, dass Ihre Benutzer gute Bürger sind, und folgen den Anweisungen, nur ein einziges Zeichen einzugeben. Lassen Sie uns das noch einmal ausführen. Geben Sie einen Text ein. Jetzt kann ich Samantha sagen und nach A suchen. Und dann können Sie sehen, dass es es an der Indexposition eins findet Also an der zweiten Position, die Indexposition eins ist Und lass es uns noch einmal machen. Mal sehen, ob es immer noch wie erwartet funktioniert. Wenn ich Samantha sage und nach X suche, erhalte ich minus eins. Und noch ein Test. Wenn ich Samantha eintippe und nach T suche, können Sie sehen, dass ich fünf erhalte Dies ist die Indexposition des ersten T, das Python in der Eingabezeichenfolge findet Ordnung. Also das funktioniert. Lassen Sie uns das Skript bereinigen, die Kommentare entfernen und wir sind mit dieser Übung fertig. 47. Strings und String-Methoden (ZUSAMMENFASSUNG): Willkommen zurück, alle zusammen. In diesem Abschnitt erfahren Sie, wie Zeichenketten mit String-Methoden manipulieren können. Sie lernen, mit Benutzereingaben zu arbeiten und mit Zahlenfolgen umzugehen. Darüber hinaus haben Sie eine Handvoll Möglichkeiten kennengelernt , Zeichenketten für den Druck zu formatieren. Außerdem haben wir uns mit dem Teilen, Verketten und Verbinden von Zeichenketten Nebenbei haben Sie auch etwas über F-Zeichenketten und mehrzeilige Zeichenketten gelernt , wie man Zeichenketten indexiert und aufteilt, wie Zeichenketten unveränderlich sind, und Sie haben auch gelernt, wie Sie mithilfe entdecken Im nächsten Abschnitt werden wir Arbeit mit Strings und String-Methoden üben Dabei üben Sie die Konzepte, die Sie in diesem Abschnitt gelernt haben , und tragen dazu bei, dass sie Bestand haben. Ich möchte mich bei Ihnen für die Fertigstellung des Abschnitts bedanken und Ihnen gratulieren. 48. PROJEKT: Ein Quittungsdruckprogramm erstellen: Willkommen zu Ihrem ersten Projekt. Wir werden ein sehr einfaches Programm zum Drucken von Belegen erstellen. Während dieser Woche werden Operatoren, die Zeichenketten bearbeiten, diese Fähigkeiten nutzen, um dieses Programm zu erstellen, da wir mehr über Variablen gelernt haben Operatoren, die Zeichenketten . Es ist immer gut, sich ein Design dessen vorzustellen, was Sie bauen möchten. Bei größeren Projekten empfiehlt es sich, ein Flussdiagramm oder eine Art Designdokument zu erstellen , das Sie auf Kurs hält. Auf diese Weise weichen Sie nicht vom angestrebten Ergebnis ab. Für uns werden wir mit den erlernten Konzepten ein kleines Programm zum Drucken von Belegen erstellen mit den erlernten Konzepten ein kleines Programm zum Drucken von Belegen , bei dem die Ausgabe wie folgt aussehen wird Fangen wir also an. Wann immer Sie ein Projekt beginnen, müssen Sie immer wissen, wo Sie anfangen sollen. Unabhängig von der Größe des Projekts gibt es bestimmte Abhängigkeiten. Wie beim Hausbau muss man ein Fundament haben, bevor man ein Dach darauf legen kann. Fangen wir an, die Variablen zu definieren , mit denen wir in diesem Programm arbeiten werden . A Es ist gut, gute Codierungstechniken zu implementieren , wenn Sie ein Python-Programm schreiben. Diese in diesem Block eingeführte Technik ermöglicht die Deklaration mehrerer Variablen in derselben Zeile. Dazu trennen wir die Variablennamen und ihre zugehörigen Werte durch. Betrachtet man die ersten beiden deklarierten Variablen, wird der Wert von oranges mit dem Variablennamen P, einem Unterstrich und dem Wert 5,90 gespeichert dem Variablennamen P, einem Unterstrich und dem Wert Dieser Wert wird im Variablennamen P mit einem Unterstrich als Preis gespeichert Variablennamen P mit einem Anstatt sechs Zeilen zu schreiben, haben wir unser Programm bereits um die Hälfte reduziert Je weniger Zeilen wir verwenden, desto besser meistens. Als Nächstes definieren wir oben auf der Quittung die Variablen, die wir für das Unternehmen verwenden werden . Ich als Beispiel: Wir haben den Firmennamen komplett in Kleinbuchstaben gelassen, sodass Sie dieses Problem mithilfe einer Streaming-Manipulationsmethode beheben können dieses Problem mithilfe einer Streaming-Manipulationsmethode beheben Abschließend deklarieren wir am Ende der Quittung die Nachricht, die an den Benutzer ausgegeben wird Ende der Quittung die Nachricht, die an den Benutzer ausgegeben Wie wir aus dem Design ersehen können, das wir zu Beginn des Projekts entworfen haben, müssen wir oben und unten einen Rand herausstechen Fangen wir mit einem oberen Rand an. Wir versuchen nur, 50 Sterne hintereinander für Tom Border auszudrucken , anstatt 50 gedruckte Aussagen zu machen. Wir können die Zeichenfolge einfach mit der gewünschten Zahl multiplizieren . Wir haben unsere Variablen im Unternehmen bereits anhand der vorherigen Zeilen definiert , also lassen Sie uns sie anzeigen. Escape-Zeichen werden in das definierende Backslash-Zeichen eingelesen das definierende Backslash-Zeichen Was auch immer nach diesem umgekehrten Schrägstrich kommt wird vom Computer interpretiert In den ersten drei Druckanweisungen verwenden wir den umgekehrten Schrägstrich T für den Tabulatoreinzug Wenn wir die beiden Escape-Zeichen in einer Reihe verwenden , um die Ausgabe zu zentrieren, erstellen wir nun So wie wir unseren oberen Rand ausgedruckt haben, multiplizieren wir das gleiche Symbol 50, um eine Linie mit derselben Breite zu erzeugen Dadurch entsteht der Eindruck separater Abschnitte. Jetzt möchten wir eine Kopfzeile erstellen, bevor wir den Namen und den Preis der einzelnen Produkte auflisten. Dies kann einfach geschehen, indem Sie unsere Escape-Zeichen zum Einrücken verwenden. Aufgrund der Größe der Header-Namen wollen wir vor jeder Kopfzeile nur einen einzigen Tab verwenden Jetzt können wir weitermachen und eine Zeile für die Informationen jedes Produkts ausgeben . Okay. Okay. Wir haben in den vorherigen Print-Statements ähnliche Stile verwendet in den vorherigen Print-Statements ähnliche Stile um den Titel, den Preis und die jeweiligen Überschriften der einzelnen Produkte zentriert Preis und die jeweiligen Überschriften Lassen Sie sich nicht von all den Symbolen mit der Druckzeichenfolge verwirren , da Sie sie einfach in ein Tabulatorzeichen aufteilen können, gefolgt von der Formatierung der ersten Variablen in der Zeichenfolge, gefolgt von zwei Tabulatoren, gefolgt von einem 1-Dollar-Zeichen, damit der Preis wie eine Währung aussieht , und gefolgt Formatierung der zweiten Variablen in der Damit ist der Abschnitt für unsere Artikel abgeschlossen. Fügen wir also einen weiteren Abschnittsteiler Wie der Produktbereich. Wir möchten eine Überschrift für unsere Gesamtsumme erstellen, aber auch sie aber auch unter der Preisspalte zentrieren, wie im Produktbereich. Dazu benötigen wir drei Tabs. wir nun unsere Gesamtsumme an die Preisspalte in den Produkten angepasst haben , können wir unsere Gesamtsumme in die nächste Zeile importieren. Bevor wir jedoch eine Summe ausdrucken können, müssen wir zuerst die Summe berechnen, die die Summe all unserer Produkte darstellt. Definieren wir eine Variable namens total und drucken sie dann aus. Auch hier haben wir drei Tabs und ein 1-Dollar-Zeichen hinzugefügt , damit der Gesamtwert als Währung angezeigt wird. Fügen wir nun einen Abschnittsrand hinzu. Y. Um die letzte Dankesnachricht anzuzeigen, hat unser Design etwas mehr Abstand als jeder andere Abschnitt, sodass wir ein paar neue Zeilen hinzufügen müssen, um ihm etwas mehr Abstand zu geben. Unsere Botschaft ist jetzt zentriert und wir können weitermachen. Um das einfache Druckprogramm zu beenden, müssen wir aus ästhetischen Gründen einen unteren Rand einfügen. Führen Sie das Programm aus. Beachten Sie, dass der Preis unseres dritten Produkts, Olivenöl, genau wie die anderen beiden Produkte liegt. Lassen Sie uns also einen Tab löschen. Führen Sie das Programm erneut aus. Und es funktioniert super. Herzlichen Glückwunsch. So einfach es auch sein mag, es ist ein großer Meilenstein. Versuche, das Programm zu brechen. Ich ermutige die Schüler immer, Programme auszuprobieren und zu unterbrechen , weil Sie dadurch lernen, wie Sie das Problem beheben können. Jetzt habe ich eine herausfordernde Frage. Im Rahmen des Projekts haben wir letztendlich Grenzen über und unter den ausgedruckten Informationen geschaffen . Versuchen Sie, jetzt auch an den Seitenrändern einen Sternrand hinzuzufügen . Die Lösung befindet sich immer in den Ressourcendateien. Wenn Sie Fragen oder Vorschläge zur Verbesserung des Programms haben, lassen Sie es mich bitte wissen. Danke fürs Zuschauen. 49. Zahlen und Mathe (Übersicht): Computer verwenden Zahlen, um alle Arten von Informationen wie Text, Bildern, Musik und sogar Videos wie dem, das Sie gerade ansehen, darzustellen alle Arten von Informationen wie Text, Bildern, Musik und sogar Videos . ist so ziemlich alles Aus Sicht des Computers ist so ziemlich alles eine Zahl. Aus diesem Grund spielen Zahlen und die Fähigkeit, mit ihnen umzugehen in jeder Programmiersprache, einschließlich Python, eine wichtige Rolle . Vielleicht glauben manche Anfänger auch deshalb, dass sie starke mathematische Fähigkeiten benötigen, um Programmierer zu werden Das ist jedoch ein weit verbreitetes Missverständnis. In Wirklichkeit sollten Ihre Mathematikkenntnisse in der Grundschule mehr als ausreichend sein, um mit dem Programmieren zu beginnen Der tatsächliche Grad an mathematischer Vertrautheit hängt von Ihrer spezifischen Rolle in der Anwendung ab, die Sie erstellen Beispielsweise war es weniger wahrscheinlich, dass Sie sich als Webentwickler mit linearer Algebra oder Statistik auskennen als Webentwickler mit linearer Algebra oder Statistik mussten als als Datenwissenschaftler In diesem Kurs erhalten Sie einen Überblick über die numerischen Typen in Python, erstellen ganze Zahlen, Gleitkommazahlen und komplexe Zahlen und führen arithmetische Operationen durch Erfahren Sie mehr über den Fehler bei der Darstellung von Fließkommazahlen, arbeiten Sie mit mathematischen Funktionen und Zahlenmethoden und formatieren Sie Zahlen als Zeichenketten und zeigen Okay, es ist an der Zeit, dass Sie sich zunächst einen Überblick über die in Python verfügbaren numerischen Typen 50. Numerische Typen in Python: In dieser Lektion erhalten Sie einen Überblick über die verfügbaren numerischen Typen in Python aus der Vogelperspektive . Python hat drei numerische Typen, die in die Syntax integriert sind, was bedeutet, dass Sie sie sofort verwenden können , wenn Sie im Leerlauf laufen. Die drei nativen numerischen Typen von Python sind Ganzzahlen oder ganze Zahlen wie negative Drei, Null oder 42. Python nennt sie kurz It. Dann gibt es Fließkommazahlen, die einen Bruchteil haben können, wie zum Beispiel negative 2,32 oder 3,14 Diese werden als Gleitkommazahlen bezeichnet, und Sie werden lernen, warum sie so genannt werden Schließlich gibt es komplexe Zahlen, aus Real - und Imaginärteilen Diese sind etwas fortgeschrittener und werden in der Praxis selten verwendet Deshalb werden Sie sich in einer späteren Lektion mit komplexen Zahlen befassen. Der entsprechende Datentyp in Python wird komplex genannt. Es ist erwähnenswert, dass alle drei in Python integrierten numerischen Typen mit Vorzeichen versehen sind, was bedeutet, dass sie sowohl positive als auch negative Werte zusammen mit der neutralen Null speichern können sowohl positive als auch negative Werte . Darüber hinaus haben Ganzzahlen keinen Höchst - oder Minimalwert , der nur durch den verfügbaren Speicher auf Ihrem Computer begrenzt ist den verfügbaren Speicher auf Ihrem Computer Im Gegensatz dazu haben Fließkommazahlen und ihre Cousins aus komplexen einen festen Wertebereich sowie Dennoch sind sie groß genug, um die meisten realen Anwendungsfälle Streng genommen hat Python noch einen anderen numerischen Typ , den speziellen Integer-Datentyp. Er heißt Boolean oder kurz Bool und kann nur einen von zwei Werten speichern, wahr Diese Werte können jeweils als Eins und Null dargestellt werden jeweils als Eins und Null Sie sollten Boolesche Werte jedoch nicht wirklich als Zahlen betrachten, da sie für einen anderen Zweck verwendet dazu erfahren Sie in einem separaten Videokurs über bedingte Logik In den meisten Anwendungen werden Sie ausschließlich Ganzzahlen und Fließkommazahlen verwenden Ganzzahlen und Fließkommazahlen , da sie die größte Bandbreite an Problemen abdecken und gleichzeitig am effizientesten sind Eine bemerkenswerte Ausnahme bilden Finanzoperationen mit Bruchzahlen, die exakte Genauigkeit erfordern, insbesondere wenn Sie mit großen und kleinen Mengen gleichzeitig arbeiten großen und kleinen Mengen gleichzeitig Da Fließkommazahlen eine begrenzte Genauigkeit haben, würde ihre Verwendung zur Darstellung von Währungsbeträgen unweigerlich zu erheblichen Rundungsfehlern führen Sie sollten niemals Fließkommazahlen zur Darstellung von Finanzdaten in realen Anwendungen verwenden Fließkommazahlen zur Darstellung von Finanzdaten in , es sei denn, es macht Ihnen nichts aus, Informationen über das Geld Ihrer Kunden zu verlieren Ein gängiges Muster für die Darstellung von Geldbeträgen besteht darin, sie als ganze Zahlen in Form der kleinsten Währungseinheit, z. B. Cent, zu speichern sie als ganze Zahlen in Form der kleinsten Währungseinheit, z. B. Cent, und sie dann wieder in Dollar umzurechnen Dieser Ansatz funktioniert jedoch nicht für mehrere Währungen , die möglicherweise unterschiedliche Einheiten verwenden Zum Beispiel hat 1$ genau 100 Cent, während ein Bitcoin in fast jeden beliebigen Bruchteil unterteilt werden kann in fast jeden beliebigen Bruchteil unterteilt Um das Problem mit Floats zu lösen, bietet Python über diese Standardbibliotheksmodule einige zusätzliche numerische Typen , die Sie zu einem anderen Zeitpunkt mehr erfahren werden Sie werden diese zusätzlichen numerischen Typen in diesem Kurs nicht benötigen , aber es lohnt sich, etwas über sie zu wissen Der erste Typ wird als Dezimalzahl bezeichnet, weil er Zahlen intern mit dem Dezimalstellensystem und nicht mit dem Binärsystem speichert , wie es bei den meisten anderen numerischen Typen der Fall ist. Abgesehen davon verhält es sich meistens wie eine Fließkommazahl. Im Gegensatz zu einer Fließkommazahl hat sie jedoch eine beliebige, aber endliche Position, die standardmäßig 28 Dezimalstellen Sie müssen also im Voraus entscheiden , wie viele Ziffern Sie behalten möchten Außerdem funktioniert eine Dezimalzahl zwar mit ganzen Zahlen, Sie können sie nicht einfach mit Fließkommazahlen mischen Wenn das eine Anforderung ist, können Sie einen anderen numerischen Typ verwenden , der in Python enthalten ist und als Bruch bezeichnet wird. Es stellt eine rationale Zahl oder einen Quotienten aus zwei ganzen Zahlen wie Brüche haben eine unendliche Genauigkeit , sodass Sie Zahlen exakt darstellen können, auch wenn sie eine wiederkehrende dezimale oder binäre Expansion haben dezimale oder binäre Expansion ohne dass durch Rundungen Informationen verloren gehen Sie nun eine allgemeine Vorstellung von den numerischen Typen in Python haben , ist es an der Zeit, sich Ganzzahlen genauer anzusehen 51. Ganzzahlen: In dieser Lektion werden Sie sich eingehend mit einem der häufigsten numerischen Typen in der Programmierung befassen, dem Integer-Datentyp , den Python Int nennt. Wenn Sie an einer interaktiven Python-Interpreter-Sitzung teilnehmen möchten , machen Sie weiter und beginnen Sie jetzt im Leerlauf Eine Ganzzahl ist eine ganze Zahl ohne Dezimalstellen. Der schnellste Weg, eine Ganzzahl in Python zu erstellen , besteht darin, ein Integer-Literal zu erstellen , das aus Ziffern besteht , die buchstäblich in Ihrem Code vorkommen Wenn Sie beispielsweise 42 und idle eingeben, wird eine Ganzzahl erstellt. Sie können den Typ eines solchen Literals überprüfen, das Python als It bezeichnet, weil ganze Zahlen ganze Zahlen sind Sie haben keinen Bruchteil. Sobald Sie also den Dezimalpunkt in Ihr Literal aufnehmen , erstellen Sie keine Ganzzahl mehr Selbst wenn der Bruchteil Ihres Literals gleich Null ist, wie in diesem Beispiel, ist das Ergebnis eine Fließkommazahl, die Sie in der nächsten Lektion mehr erfahren werden Andererseits kann ein Integer-Literal das Minuszeichen enthalten Dadurch wird eine negative Ganzzahl erzeugt. Darüber hinaus können Sie Gruppen mit mehreren Ziffern abgrenzen , indem Sie einen einzelnen Unterstrich an einer beliebigen Stelle in Ihrem Literal platzieren einen einzelnen Unterstrich , um daraus eine große Zahl zu machen, etwas leichter Python macht es keinen Unterschied, ob Sie die Unterstriche verwenden oder nicht, aber das Schreiben einer Zahl mit ihnen ist für Menschen wohl besser lesbar Bisher haben Sie nur Dezimalliterale gesehen, die aus den bekannten zehn Ziffern Null Gelegentlich möchten Sie jedoch möglicherweise eine Zahl mit einem anderen Zahlensystem ausdrücken Da Computer binäre und manchmal auch einige andere Zahlensysteme verwenden , können Sie mit Python ganze Zahlen mithilfe dieser Alternativen erstellen Indem Sie Ihrem Integer-Literal eine der wenigen unterstützten Systembasen voranstellen, können Sie ändern, wie viele Ziffern Sie Zum Beispiel kann die Zahl 42 im Binärsystem als Eins, Null, Eins, Eins, Null ausgedrückt werden Null, Eins, Eins, Binärsystem als Eins, Null, Eins, Eins, Null ausgedrückt Um Python anzuweisen, ein solches Literal als Binärziffern oder Bits zu interpretieren , können Sie das Null-B-Präfix verwenden Beachten Sie, wie Idle Ihnen die Zahl wieder im Dezimalsystem präsentiert Ihnen die Zahl wieder im Dezimalsystem Es ist dieselbe Zahl nur auf zwei verschiedene Arten dargestellt wird. In ähnlicher Weise können Sie die Zahl 42 im Hexadezimalsystem ausdrücken , indem Sie das Präfix Null x gefolgt von den Ziffern zwei A verwenden Präfix Null x gefolgt von den Ziffern zwei A stehen Ihnen bis zu 16 Ziffern Im Hexadezimalsystem stehen Ihnen bis zu 16 Ziffern zur Verfügung Die üblichen zehn Ziffern 0-9 plus sechs lateinische Buchstaben A bis F. Die Buchstaben können entweder in Groß- oder Kleinbuchstaben geschrieben werden Das letzte Zahlensystem, das von Python-Literalen unterstützt wird, ist das Oktalsystem, das acht Ziffern 0-7 hat Sie können ein Oktalliteral mit einem 00-Präfix aktivieren. Auch hier erhalten Sie eine dezimale Darstellung der erstellten Ganzzahl Man kann mit Fug und Recht sagen, dass Sie selten andere Integer-Literale als die standardmäßigen Dezimalliterale verwenden müssen andere Integer-Literale als die standardmäßigen Dezimalliterale Nichtsdestotrotz können sie manchmal nützlich sein. Verwendung von Integer-Literalen ist am besten, wenn Sie Ihre Zahlen im Voraus kennen und sie in literaler Form in Ihren Code einbetten möchten sie in literaler Form in Ihren Code einbetten Zahlen kommen jedoch oft als Zeichenketten von den Benutzern, die sie auf ihrer Tastatur eingegeben haben. Aus einer früheren Lektion erinnern Sie sich vielleicht daran, dass Sie eine Zeichenfolge in eine Ganzzahl konvertieren können , indem Sie die eingebaute Funktion in Python aufrufen . Beachten Sie die Anführungszeichen um 42, die ein Zeichenkettenliteral definieren Was Sie zurückerhalten, ist der entsprechende Integer-Wert ohne Anführungszeichen angegeben wird Auch hier können Sie den Typ des Rückgabewerts überprüfen , der zufällig int ist Standardmäßig geht die Funktion int davon aus, dass Sie eine Zeichenfolge angeben, die aus Dezimalzahlen von Null bis Neun besteht. Wenn Sie eine andere Basis für das Zahlensystem wählen möchten , können Sie der Funktion optimalerweise nach einem Komma ein zweites Argument übergeben nach einem Komma ein zweites Argument In diesem Fall erstellen Sie eine Ganzzahl 42 aus einer Folge von Binärziffern Der Höchstwert für die von Python unterstützte Basis ist 36. Es ist erwähnenswert, dass die IT einen Wert eines beliebigen Datentyps akzeptiert , nicht nur Zeichenketten. Sie können beispielsweise eine Fließkommazahl übergeben , um ihren Bruchteil zu kürzen Wie Sie sehen, ermöglicht die Int-Funktion Konvertierung von Werten aus anderen Datentypen in Ganzzahlen, was Sie möglicherweise benötigen, um Berechnungen mit Zahlen und nicht mit Zeichenketten durchzuführen Berechnungen mit Zahlen und nicht mit Zeichenketten Wenn Sie Int aufrufen, ohne Wert als Argument zu übergeben, geben Sie als Ergebnis immer Null zurück Die dritte Möglichkeit, Ganzzahlen in Python zu erstellen, besteht in Ausdrücken wie arithmetischen Ausdrücken oder Sie werden in Zukunft mehr darüber erfahren. In der Zwischenzeit sollten Integer-Literale völlig ausreichend sein. In Ordnung. Jetzt wissen Sie, wie Sie ganze Zahlen in Python mithilfe von Integer-Literalen erstellen , die Sie mit verschiedenen Zahlensystemen darstellen können, einschließlich dem Dezimal-, Binär-, Hexadezimal - und Oktalsystem In diesem Fall handelt es sich bei allen unterschiedliche Repräsentationen Sie kennen auch die in-Funktion, die Null zurückgibt, wenn Sie sie ohne Argumente aufrufen. Andernfalls konvertiert sie den von Ihnen angegebenen Datentyp, z. B. ein Zeichenkettenliteral die entsprechende Wenn Sie die in-Funktion mit einer Fließkommazahl als Argument aufrufen , kürzt sie ihren Bruchteil und gibt nur den ganzen Teil als Ganzzahl zurück Schließlich kann die in-Funktion optional ein weiteres Argument verwenden, das die Basis des Systems darstellt, das zur Interpretation einer Ziffernfolge verwendet wird, z. B. 10, eins, 010 in der angegebenen Als Nächstes werden Sie Fließkommazahlen, die zweitwichtigste Art von Zahlen, und Python untersuchen . Aber vorher habe ich in der nächsten Lektion eine Übung über ganze Zahlen Durch die Bearbeitung dieser Übungen werden Sie Ihr Wissen vertiefen und Ihr Verständnis der Python-Sprache festigen Sie gewinnen nicht nur Vertrauen in Ihre Programmierfähigkeiten, sondern verbessern auch Ihre Fähigkeiten zur Problemlösung 52. ÜBUNG: Ganzzahl-Literale definieren: Diese Übung testet Ihre Fähigkeit, ganze Zahlen in Python anhand ihrer Literalform zu definieren ganze Zahlen in Python anhand ihrer Literalform Es wäre hilfreich, sich daran zu erinnern, was Integer-Literale sind. Wie Sie bereits wissen, ist eine Ganzzahl eine ganze Zahl ohne Dezimalstellen Zum Beispiel ist eins eine Ganzzahl, 1,0 jedoch nicht. Sie können eine Ganzzahl erstellen, indem Sie die gewünschte Zahl eingeben. Im Folgenden wird beispielsweise der Variablen num die Ganzzahl 25 zugewiesen Variablen num die Ganzzahl 25 zugewiesen Wenn Sie eine Ganzzahl wie diese erstellen, wird der Wert 25 als Integer-Literal bezeichnet da die Ganzzahl buchstäblich in den Code eingegeben wird Ordnung. Hier sind deine Anweisungen für die Übung. Sie müssen ein Programm schreiben, das zwei Variablen Nummer eins und Nummer zwei erzeugt . Sowohl der Zahl eins als auch der Zahl zwei sollte das Ganzzahl-Literal 25 Millionen zugewiesen werden , mit Unterstrichen und eine ohne Unterstriche geschrieben Geben Sie dann Zahl eins und Nummer zwei in zwei separaten Zeilen aus. Ich lasse Sie das selbst durchdenken , bevor der nächsten Lektion fortfahren, in wir diese Übung gemeinsam lösen werden. 53. LÖSUNG: Ganzzahlen definieren: Ich habe Idol bereits im interaktiven Standardmodus geöffnet, was Sie an der Eingabeaufforderung erkennen können, die aus drei rechten eckigen Klammern besteht. Dies ist die Python-Shell, die Sie als Spielplatz verwenden können um Ideen schnell zu testen, indem kurze Codefragmente ausführen, bevor Sie sie in einer Datei speichern Ich werde dieses Fenster an der linken Seite des Bildschirms andocken, sodass ich auf der rechten Seite etwas Platz habe , in dem ich ein weiteres Fenster mit einer leeren Datei öffnen kann , die zur Bearbeitung bereit ist Ich möchte einen geteilten Bildschirm mit allem, was ich brauche, in einem einzigen Arbeitsbereich wie diesem haben , um zu vermeiden, den Fokus zu verlieren oder zwischen verschiedenen Programmen zu wechseln. Sie werden auch feststellen , dass ich viele Tastenkombinationen verwende , um die Dinge etwas schneller zu machen. Ihre Tastenkombinationen können sich zwar geringfügig von meinen unterscheiden, Sie können sie immer im Menü oben finden , wenn Sie daran interessiert sind, was sie sind. Ich füge die Übungsanweisungen als Python-Zeichenfolge in den Code-Editor ein, damit ich sie schnell wiederfinden kann. Wie Sie sehen können, habe ich bereits aus jedem Satz einen eigenen Aufzählungspunkt gemacht , den wir nacheinander behandeln werden. Wir werden zwei Variablen mit den Namen Nummer eins und Nummer zwei erstellen . Es ist üblich, jede Variable in Python aus Gründen der besseren Lesbarkeit in einer separaten Zeile zu definieren , obwohl es technisch möglich ist, sie auf eine einzige Zeile zu quetschen, was manchmal gerechtfertigt sein kann Zur Erinnerung: Sie können eine Variable definieren, indem Sie ihren Namen angeben, z. B. num one, gefolgt vom Zuweisungsoperator , der in Python das Gleichheitszeichen ist, und schließlich dem Wert. Laut dem zweiten Aufzählungspunkt sollen beide Variablen denselben ganzzahligen Wert von 25 Millionen haben , aber sie werden in zwei alternativen Literalformen geschrieben Verwenden wir das Integer-Literal mit Unterstrichen für die erste Variable und eines ohne Unterstriche für die zweite Sie können Unterstriche an einer beliebigen Stelle in Ihren Literalen platzieren, solange sie nicht vorne oder am Ende erscheinen Mit anderen Worten, auf beiden Seiten des Unterstrichs müssen sich einige Ziffern befinden , und diese Unterstriche sind völlig optional, da Python sie ignoriert Sie können hilfreich sein, um ähnliche Ziffern visuell zu gruppieren, wie in der Übung Der erste Literalwert ist wohl leichter zu lesen als der zweite Auf Anhieb heißt es, schreiben Sie ein Programm, das anzeigt, dass Sie Ihren Code als Python-Skript speichern sollten, was ich jetzt tun werde, und der Datei den Namen Übung eins geben. Idle geht davon aus, dass wir eine Datei mit Python-Quellcode erstellen , sodass automatisch die Punkt-Pi-Erweiterung an den Dateinamen angehängt die Punkt-Pi-Erweiterung an den wird, sofern nicht anders angegeben Sie können den Pfad zu Ihrer Datei in der Titelleiste des Fensters sehen Ihrer Datei in der Titelleiste des Fensters Im letzten Punkt dieser Übung geht es nun darum, beide Variablen zu drucken , um ihre aktuellen Werte anzuzeigen. Beim Drucken geht es darum, die integrierte Druckfunktion mit jeder Variablen als Argument aufzurufen Druckfunktion mit jeder Variablen als Argument Also drucke Nummer eins und drucke Nummer zwei. Sie können die Datei jetzt speichern und im interaktiven Fenster auf der linken Seite ausführen . Auf meinem Computer kann ich das Modul neu laden, indem ich F 5 auf meiner Tastatur drücke Die beiden Zahlen, die auf dem Bildschirm erscheinen, sind das Ergebnis eines zweimaligen Aufrufs der Druckfunktion Aufrufs der Druckfunktion mit unterschiedlichen Argumenten Beachten Sie, dass Python trotz der Verwendung alternativer Literalformen wir den Variablen zuweisen, alternativer Literalformen, die wir den Variablen zuweisen, sie auf die gleiche Weise druckt Sie können dies überprüfen, indem Sie print explizit mit Nummer eins und Nummer zwei in der interaktiven Python-Shell auf der linken Seite aufrufen eins und Nummer zwei in . Sie sehen, aus Pythons Sicht enthalten beide Variablen genau denselben numerischen Wert. Die Verwendung von Unterstrichen in Integer-Literalen macht nur Programmierer wie Sie, die den Quellcode lesen, einen Unterschied Sie, die den Quellcode lesen, Ein 54. Gleitkommazahlen: In dieser Lektion lernen Sie, wie Sie Zahlen mit dem Fließkomma-Datentyp von Python darstellen , der sich am besten für Zahlen mit Bruchteilen eignet . Wie bei ganzen Zahlen können Sie Fließkommazahlen in ihrer Literalform erstellen Fließkommazahlen in ihrer Literalform Der einzige Unterschied zwischen einem Ganzzahl-Literal und einem Gleitkomma-Literal von 0,1 besteht darin, dass ein Fließkomma-Literal einen Dezimalpunkt haben muss , um den gesamten Teil vom Bruchteil zu trennen den gesamten Teil vom Bruchteil Sie benötigen nicht einmal die nachfolgende Null, um eine Fließkommazahl zu bestimmen , solange Sie den Dezimalpunkt in Ihr Literal einbeziehen Ebenso können Sie die führende Null überspringen wenn Ihre Zahl ein Bruch wie 0,42 ist Fließkommazahlen in Python unterstützen dieselbe Gruppierung von digitalen Zahlen wie Ganzzahlen mit Hilfe des Unterstrichs Wie Sie sehen, ist es möglich, denselben Wert wie 42 mit verschiedenen Datentypen in Python auszudrücken . Der Unterschied besteht darin, wie sie es im Speicher Ihres Unternehmens darstellen und wie viel Speicherplatz sie beanspruchen, was sich wiederum auf die Leistung und Präzision verschiedener Operationen auswirkt . Darüber hinaus können Sie Fließkommaliterale in Python mithilfe der wissenschaftlichen Notation definieren Fließkommaliterale in , die manchmal als Exponentialnotation oder E-Notation bezeichnet wird Exponentialnotation oder E-Notation Die Idee dahinter ist, die wiederholten Nullen zu einer wirklich großen oder sehr kleinen Zahl zusammenzufassen einer wirklich großen oder sehr kleinen Zahl und sich nur auf die signifikanten Ziffern zu konzentrieren Sie können zum Beispiel dieselbe Zahl als 4,2 mal Zehn hoch sieben schreiben 4,2 mal Zehn hoch sieben Der Buchstabe E, der entweder Klein- oder Großbuchstaben sein kann, steht für den Der Exponent selbst muss eine ganze Zahl sein, aber auch negativ sein, genau wie die Zahl davor. Eine solche Notation mag seltsam oder unpraktisch erscheinen, aber sie kann manchmal den Umgang mit großen oder kleinen Zahlen in arithmetischen Operationen erleichtern Vielleicht haben Sie die E-Notation auf Taschenrechnern gesehen , die damit Zahlen darstellen, die sonst nicht auf den Bildschirm passen würden auf den Bildschirm passen Wenn Ihnen diese Notation nicht gefällt, können Sie Ihre Fließkommazahl mit einer festen Anzahl von Dezimalstellen formatieren mit einer festen Anzahl von , z. B. acht, um alle Nullen aufzudecken Wie bei ganzen Zahlen können Sie Fließkommazahlen auf zwei Arten erstellen Fließkommazahlen auf zwei Sie können entweder ihr Literal verwenden, das aus Ziffern und dem Dezimalpunkt besteht, oder Sie können die eingebaute Float-Funktion aufrufen Wenn Sie die Funktion ohne Argumente aufrufen, kehrt sie zu einer Fließkommazahl zurück, die Null entspricht Beachten Sie, dass sich dies von einer Ganzzahl Null unterscheidet. In den meisten Fällen akzeptiert die Funktion jedoch ein einzelnes Argument, das entweder eine Zeichenfolge oder eine Zahl sein kann , z. B. eine Ganzzahl oder eine andere Fließkommazahl. Das ist praktisch, um andere Datentypen in Fließkommazahlen umzuwandeln . Sie sollten die Gleitkommafunktion auch verwenden, um einige spezielle Werte zu definieren , die im Datentyp Fließkommazahl keine wörtliche Darstellung haben im Datentyp Fließkommazahl keine wörtliche Darstellung Datentyp Fließkommazahl In diesen Fällen übergeben Sie einen bestimmten Zeichenkettenwert als Argument an die Float-Funktion Zwei davon sind positiv und negativ unendlich. Diese sind nützlich als ungebundene Ober- und Untergrenzen, wenn Sie beispielsweise nach einem Höchst- oder Minimalwert suchen Praktischerweise können Sie die Unendlichkeit mit normalen Zahlen vergleichen , was zu vernünftigen Ergebnissen führt Der dritte Sonderwert im Fließkomma-Datentyp wird weder Zahl noch NAN genannt. Sie können ihn verwenden, um explizit auf einen fehlenden Wert hinzuweisen. Es wird jedoch häufiger von Python selbst verwendet , um eine undefinierte mathematische Operation zu signalisieren, z. B. die Division der Unendlichkeit durch eine andere Unendlichkeit Es gibt eine interessante Eigenart an keiner Zahl, denn Python folgt der IE 754-Spezifikation für die Fließkomma-Arithmetik Keine Zahl ist niemals gleich einem Wert, nicht einmal sich Ein weiterer Unterschied zu Fließkommazahlen, wenn Sie sie mit ganzen Zahlen vergleichen, ist , dass sie einen festen Grenzwert haben Wenn Sie versuchen, einen Wert zu finden , der größer als der zulässige Höchstwert ist, erhalten Sie am Ende unendlich Woher weißt du, was der Maximalwert ist? Nun, in der Praxis ist das nicht wirklich wichtig, weil der Bereich einer Fließkommazahl so groß ist, dass er in den meisten Fällen mehr als ausreichend sein wird. Wenn Sie es jedoch wirklich herausfinden möchten, können Sie die folgenden Anweisungen verwenden. In diesem Fall ist der Maximalwert etwa 1,8 mal zehn hoch 308. Denken Sie daran, dass diese Zahl in Stein gemeißelt ist da verschiedene Python-Interpreter unterschiedliche Grenzen haben können je nach Plattform, für die sie entwickelt wurden , Zusammenfassend lässt sich sagen, dass Sie in Python Fließkommazahlen mithilfe ihrer Literale erstellen können in Python Fließkommazahlen mithilfe ihrer Literale Das muss einen Dezimalpunkt enthalten. Gleichzeitig benötigen Sie die nachfolgenden oder führenden Nullen in diesen Literalen nicht , sodass nur das Dezimaltrennzeichen an der richtigen Stelle bleibt Sie können Fließkommaliterale mithilfe der wissenschaftlichen Notation angeben , die als E-Notation bekannt ist . Mit dieser Notation können Sie wirklich große oder sehr kleine Fließkommazahlen präzise ausdrücken wirklich große oder sehr kleine Fließkommazahlen präzise Die zweite Art, Fließkommazahlen und Python zu definieren , nutzt die eingebaute Float-Funktion. Wenn Sie die Funktion ohne Argumente aufrufen, gibt sie eine Fließkommazahl gleich Null zurück. Sie werden sie jedoch fast immer mit einem Argument aufrufen , um einen anderen Datentyp in eine Fließkommazahl umzuwandeln . Insbesondere können Sie eine Zeichenfolge konvertieren, die aus Dezimalziffern und einigen Sonderzeichen wie dem Minuszeichen besteht, oder Sie können eine Ganzzahl oder sogar eine andere Fließkommazahl konvertieren . Es gibt auch einige spezielle Fließkommawerte , die Sie mit Hilfe der Float-Funktion ermitteln können. Sie sind die negative Unendlichkeit, positive Unendlichkeit und keine Zahl. Okay, jetzt, wo Sie sich mit ganzen Zahlen und Fließkommazahlen auskennen , ist es an der Zeit zu lernen, wie Sie sie in arithmetischen Ausdrücken in Python verwenden können arithmetischen Ausdrücken 55. Arithmetik- und Vergleichsoperatoren: Hallo, alle zusammen. Hier ist Andreas. Und in dieser Vorlesung werden wir etwas über arithmetische Operatoren lernen, und wir werden ein Dutzend Beispiele verwenden, um sie vollständig zu verstehen Also starte Shell und lass uns anfangen. Operatoren helfen uns dabei, die üblichen mathematischen Operationen an Variablen durchzuführen die üblichen mathematischen Operationen an Variablen arithmetischen Operatoren in Python gehören Addition, Subtraktion, Multiplikation, Division, Unterteilung, auch Ganzzahldivision genannt, Modulo, Potenzierung, unäre positive und unäre Negation Ich habe eine PDF-Datei mit einer schönen Tabelle mit dem Operator, einem Beispiel, der Bedeutung und dem Ergebnis beigefügt mit einer schönen Tabelle mit dem Operator, einem Beispiel, der Bedeutung und dem Ergebnis . Sie können es von Ihren Ressourcendateien aus öffnen. Hier sind einige Beispiele für die Verwendung dieser Operatoren. A entspricht zehn, B entspricht drei. Addition A plus B. Das Ergebnis ist 13. Subtraktion, A minus B. Das Ergebnis ist Sieben, Multiplikation A, multipliziert mit B. Das Ergebnis ist 30. Division, A, dividiert durch B. Geben Sie ein. Das Ergebnis ist 3,333 usw. Der Operator der Division ist ein Schrägstrich. Das Ergebnis einer Standarddivision ist immer eine Gleitkommazahl, auch wenn die Dividende gleichmäßig durch den Divisor teilbar ist Unterteilung im Stockwerk. A, Geschossunterteilung B entspricht drei Der Operator der Stockwerksabteilung ist der doppelte Schrägstrich. Das Ergebnis der Stockwerksteilung ist der Quotient , aus dem A durch B geteilt und auf die nächstkleinere ganze Zahl gerundet wird die nächstkleinere ganze Wenn das Ergebnis der Geschossteilung positiv ist, ist es so, als ob der Bruchteil abgeschnitten wurde, sodass nur der ganzzahlige Teil übrig bleibt Wenn das Ergebnis negativ ist, wird das Ergebnis auf die nächstkleinere oder größere negative Ganzzahl abgerundet die nächstkleinere oder größere negative Ganzzahl Modulus, A, Modulo B entspricht Eins. Der Operator von Modulo ist das Prozentzeichen. Das Ergebnis von Modulo ist der Rest, wenn A durch B geteilt wird durch B geteilt A, Exponent B entspricht 1.000. Der Operator der Erklärung ist das Doppel-Asterix. Das Ergebnis der Potenzierung ist A, potenziert mit B. In der Programmierung wird das Gleichheitszeichen als Zuweisungszeichen bezeichnet Das bedeutet, dass wir den Wert, der auf der rechten Seite des Gleichheitszeichens basiert, der Variablen auf der linken Seite zuweisen der rechten Seite des Gleichheitszeichens basiert, der Variablen auf der linken Außerdem haben die Anweisungen A gleich B und B gleich A in der Programmierung sehr unterschiedliche Bedeutungen Öffnen Sie beispielsweise den Leerlauf-Editor und geben Sie den folgenden Code Lassen Sie uns das Programm mit F 5 oder für das Menü ausführen. Wir müssen es zuerst speichern. Und sieh dir die Ergebnisse an. A ist gleich 20 und B ist gleich 20. Obwohl A in der ersten Zeile einen Anfangswert von zehn hat , weist die dritte Zeile A gleich B den Wert von B A zu, wodurch der Wert von A auf 20 geändert wird, während der Wert von Entscheidend ist der Vorrang mathematischer Operatoren. Die Reihenfolge der Operationen der mathematischen Python-Operatoren ähnelt der der Mathematik. Der Exponentenoperator wird zuerst ausgewertet. die Operatoren Multiplikation, Division, Unterteilung und Modul Als Nächstes werden die Operatoren Multiplikation, Division, Unterteilung und Modul von links nach rechts ausgewertet Die Additions- und Subtraktionsoperatoren werden zuletzt ausgewertet, ebenfalls von links nach rechts Sie können bei Bedarf Klammern verwenden, um die übliche Rangfolge außer Kraft zu setzen Lassen Sie uns zur interaktiven Shell springen, um einige Beispiele zu sehen. Das Ergebnis ist 13 , weil die Multiplikation zuerst ausgewertet wird Setzen wir nun fünf und zwei in Klammern . Das Ergebnis ist 28. Da die Klammer die meisten Präzedenzfälle hat, wollen wir uns ein anderes Beispiel ansehen. Das Ergebnis ist drei, weil die Klammer die höchste Priorität hat Das entspricht also drei, und das entspricht fünf, und das Endergebnis Machen Sie sich keine Gedanken über den Vorrang mathematischer Operatoren. Es ist Pythons Aufgabe, Teile des Ausdrucks auszuwerten. Wenn Sie Fragen zu grundlegenden Operatoren haben , stellen Sie diese bitte. Ich helfe Ihnen gerne weiter. Danke fürs Zuschauen. 56. Logische (Boolean) und verkettete Vergleichsoperatoren: Hallo Leute, Whatsap? In diesem Video erfahren Sie, wie Sie die drei wichtigsten logischen Operatoren in mehreren Kettenvergleichen verwenden wichtigsten logischen Operatoren in mehreren Kettenvergleichen Lassen Sie uns also direkt zur Lektion übergehen. Wenn Sie boolesche Werte vergleichen möchten, gibt es drei boolesche Operatoren und oder und Null Die logischen Operatoren nicht oder und und modifizieren und verbinden Ausdrücke, die im booleschen Kontext ausgewertet werden booleschen Hier ist die Tabelle, die Sie auch als PDF-Datei finden können. Lassen Sie uns diese Operatoren nacheinander erklären. Der Operator and gibt true zurück , wenn alle Bedingungen erfüllt sind. Andernfalls wird False zurückgegeben. Beispielsweise gibt die Aussage, drei größer als eins und fünf größer als vier, wahr zurück, da beide Bedingungen wahr sind, aber drei größer als eins und fünf kleiner als vier gibt falsch zurück da eine von zwei Bedingungen falsch ist. Der Operator oder gibt wahr zurück , wenn mindestens eine Bedingung erfüllt ist. Andernfalls wird falsch zurückgegeben. Die Aussage Drei größer als eins oder fünf weniger als vier gibt wahr zurück, da die erste Bedingung drei größer als eins wahr ist. Der Nicht-Operator gibt wahr zurück, wenn die Bedingungen nach dem t falsch sind, andernfalls wird falsch zurückgegeben. Die Aussage nicht vier größer als fünf gibt wahr zurück, da vier nicht größer als fünf ist. Der Nein-Operator ergibt also einfach den entgegengesetzten Bolein-Wert Ein spannendes Feature von Python ist die Fähigkeit, mehrere Vergleiche zu verketten , um einen komplexeren Test durchzuführen. Vergleichsoperatoren können beliebig miteinander verkettet werden Geben Sie beispielsweise fünf größer als drei, größer als eins ein und geben Sie ein Das ist wahr, weil Python zuerst prüft, ob fünf größer als drei ist und dann, ob drei größer als eins ist. Lassen Sie uns ein weiteres Beispiel mit booleschen Ausdrücken , die Vergleichsoperatoren in der interaktiven Shell verwenden Eins weniger als drei und drei weniger als fünf. Und tritt ein. Das ist ein Syntaxfehler. Warum? Weil ich Großbuchstaben eingegeben habe, was falsch ist Lass es uns ändern und erneut eingeben. Das ist wahr, weil beide Bedingungen in den Klammern wahr sind Ich hoffe, du verstehst die booleschen Operatoren. Machen Sie Ihre Beispiele zu Hause, um sie vollständig zu verstehen. Danke fürs Zuschauen. Wir sehen uns in der nächsten Vorlesung. Tschüss. 57. Gleitkomma-Darstellungsfehler: Hallo, alle zusammen. In dieser Lektion lernen wir den Darstellungsfehler kennen, der sich auf die Genauigkeit von Fließkommazahlen in praktisch jeder Programmiersprache, einschließlich Python, auswirkt . Bevor wir uns mit Fließkommazahlen befassen, ist es hilfreich, einen Schritt zurückzutreten und über Festkommazahlen nachzudenken. Dies ist eine der einfachsten Möglichkeiten, ist eine der einfachsten Möglichkeiten reelle Zahlen in Computern darzustellen. Die Idee hinter Festkommazahlen besteht darin, dem ganzen Teil und dem Bruchteil eine bestimmte Anzahl von Ziffern zuzuweisen eine bestimmte Anzahl von Ziffern ganzen Teil und dem Bruchteil Daher sind die Platzierung des Dezimalpunkts sowie die Gesamtzahl der Ziffern im Voraus bekannt und ändern sich Voraus bekannt und ändern Das größte Problem bei einer solchen Darstellung ist ihre Speicherineffizienz, wodurch der verfügbare Wertebereich, den Sie verwenden können, eingeschränkt Wertebereich, den Sie verwenden können, Beachten Sie in diesen Beispielen, wie viel Leerraum leer bleibt , wenn er mit Nullen gefüllt wird Fließkommazahlen hingegen können sich an die Größe der Zahl anpassen, für die sie stehen Bei der Darstellung von Fließkommazahlen kann der Dezimalpunkt nach links oder rechts verschoben werden, um verschiedenen Zahlengrößen Rechnung zu tragen. Auf diese Weise können Sie den verfügbaren Speicherplatz effektiver nutzen , ohne Speicherplatz zu verschwenden Wirklich große Zahlen, wie die Lichtgeschwindigkeit, erfordern normalerweise nicht viel Präzision Es ist also wahrscheinlich in Ordnung, mehr Speicher für die signifikanten Ziffern zuzuweisen und gleichzeitig den Bruchteil Umgekehrt profitieren kleinere Zahlen wie die Größe eines Atoms davon, die Anzahl der Nachkommastellen zu erhöhen, indem das Dezimalkomma nach links verschoben wird Anzahl der Nachkommastellen zu erhöhen, indem das Dezimalkomma Dezimalkomma Solange Sie damit einverstanden sind, Genauigkeit gegen die Größe einer Zahl und umgekehrt einzutauschen, können Sie einen riesigen Zahlenbereich auf relativ kleinem Speicher speichern einen riesigen Zahlenbereich auf relativ kleinem Je größer die Fließkommazahl ist, desto geringer ist ihre Genauigkeit. Gleichzeitig haben kleinere Zahlen tendenziell eine höhere Genauigkeit. Nun wissen Sie, dass Fließkommazahlen ihren Namen der Art und Weise verdanken, wie sie im Arbeitsspeicher eines Computers dargestellt werden. Sie sind im Wesentlichen wissenschaftliche Schreibweise im Binärsystem mit einigen zusätzlichen Extras, was sie in Bezug auf die Speichernutzung exponentiell effizient macht in Bezug auf die Speichernutzung exponentiell effizient Leider ist der Preis für eine solche Darstellung der Verlust der Fähigkeit, einige Zahlen exakt auszudrücken, was zu sehr überraschenden Ergebnissen führen kann, wie dem, das Sie auf der aktuellen Folie sehen können Schauen Sie sich ein paar Beispiele in IDL an. Wenn Sie 0,1 plus 0,2 in Python eingeben, erhalten Sie ein Ergebnis, das dem, was Sie erwarten würden, ziemlich nahe kommt, aber nicht genau richtig ist was Sie erwarten würden, ziemlich nahe kommt, . Der Grund für dieses seltsame Ergebnis liegt darin, dass die beiden Zahlen, die Sie zu addieren versuchen , keine exakte Darstellung für den Datentyp Fließkomma haben , der nur eine Näherung der reellen Zahlen darstellt Standardmäßig zeigt Python nur die signifikantesten Ziffern einer Zahl an. Um die verbleibenden Zahlen aufzudecken, können Sie Ihre Zahl formatieren und beispielsweise 100 Dezimalziffern anfordern . Der Flow-Datentyp enthält jedoch nur etwa 55 Ziffern. Wenn Sie mehr Ziffern anfordern, füllt Python die Zahl rechts mit Nullen auf , da nicht genügend Informationen vorhanden Nun, woher kommen all diese scheinbar zufälligen Ziffern Ohne zu technisch zu werden, müssen Sie bedenken, dass Computer alle Zahlen im Binärsystem nur mit Einsen und Nullen speichern alle Zahlen im Binärsystem nur mit und nicht mit dem Dezimalsystem mit den zehn Ziffern 0-9 Wenn Sie ein Zehntel oder zwei Zehntel in das Binärsystem umrechnen , erhalten Sie am Ende eine wiederkehrende binäre Zeichenfolge , die sich , die Es ist ein bekanntes Problem, mit dem Sie auch im Dezimalsystem konfrontiert werden Wenn Sie beispielsweise versuchen, ein Drittel darzustellen, ist das Ergebnis 0,3, was immer wieder vorkommt, weil Computer nicht über unendlich viel Arbeitsspeicher verfügen Irgendwann müssen sie nur noch die binäre Zeichenfolge abschneiden und die Ergebnisse auf den nächsten darstellbaren Wert runden Ergebnisse auf den nächsten darstellbaren Auf der anderen Seite können Sie, solange Sie im Bereich des Binärsystems bleiben , eine Zahl exakt darstellen, indem Sie einen Fließkomma-Datentyp verwenden Ein Viertel ist beispielsweise eine Zweierpotenz, es hat also eine endliche binäre Expansion Das Gleiche gilt für eine Hälfte. Wenn Sie sie zusammenzählen, erhalten Sie ein genaues Ergebnis ohne Rundungsfehler Um es noch einmal zu wiederholen: Eine Fließkommazahl ist normalerweise nur eine Annäherung an die reelle Zahl, ähnlich wie beispielsweise die verlustbehaftete Komprimierung in JPEG-Bildern Machen Sie sich keine Sorgen, wenn Ihnen dadurch der Kopf schwirrt. In den meisten technischen Anwendungen bewegt sich der Fehler bei der Darstellung von Fließkommazahlen innerhalb akzeptabler Grenzen, und die Ergebnisse sind zufriedenstellend Bei wissenschaftlichen oder finanziellen Berechnungen macht sich der Rundungsfehler In diesen Fällen sollten Sie sich mit anderen numerischen Typen befassen, z. B. mit dem Dezimaltyp, der bereits in diesem Kurs erwähnt wurde Okay. Nachdem das geklärt ist, ist es an der Zeit, sich die mathematischen Funktionen und Zahlenmethoden in Python genauer anzusehen . 58. Mathematische Funktionen und Zahlenmethoden: In dieser Lektion lernen Sie die gängigsten Funktionen kennen , mit denen Sie in Python mit Zahlen arbeiten können. Sie werden auch einige nützliche Verhaltensweisen von Ganzzahlen und Fließkommazahlen entdecken von Ganzzahlen und Fließkommazahlen Lassen Sie uns ohne weitere Umschweife gleich darauf eingehen. Die erste Funktion, auf die Sie beim Verarbeiten von Zahlen in Python stoßen können , ist die runde Standardmäßig verwendet sie eine Fließkommazahl und gibt die nächste Ganzzahl zurück beispielsweise 2,3 als Argument übergeben, wird die Zahl abgerundet und zwei zurückgegeben. Andererseits wird eine Zahl wie 2,7 aufgerundet. Die Dinge werden unerwarteter , wenn Ihre Ziffer auf Fünf endet. Dies wird als Gleichstand bezeichnet , da die Entfernung zur nächsten ganzen Zahl genau gleich ist , unabhängig davon, ob Sie auf- oder abrunden. Python verfolgt eine Strategie, bei der solche Unstimmigkeiten gelöst werden, indem auf die nächste gerade Zahl gerundet wird In diesem Fall ist diese Zahl zwei. Im Fall von 3,5 ist die nächste gerade Zahl jedoch vier. Diese Wahl wurde bewusst getroffen , um die Auswirkungen der Rundung auf Operationen mit vielen Fließkommazahlen so gering Rundung auf Operationen mit vielen Fließkommazahlen Eine weitere interessante Tatsache über die Funktion round in Python ist, dass Sie ihr optional ein zweites Argument übergeben können, das angibt, wie viele Dezimalziffern Sie runden möchten. Wenn Sie beispielsweise eine Näherung von Pi haben, können Sie sagen, dass die Zahl zwei, drei Dezimalstellen rundet Beachten Sie, dass Sie als Ergebnis diesmal eine Fließkommazahl erhalten , da in diesem Beispiel fünf die letzte Ziffer war Das bedeutet, dass es einen Gleichstand gibt. Anstatt jedoch auf die nächste gerade Ganzzahl zu runden, betrachtet Python die vorletzte Ziffer, betrachtet Python die vorletzte um über die Rundungsrichtung zu entscheiden In diesem Fall ist zwei die nächste gerade Zahl. Dies funktioniert jedoch nicht immer richtig. Wenn Sie versuchen, eine Zahl wie 2,675 auf zwei Dezimalstellen zu runden , würden Sie erwarten, 2,68 als Ergebnis zu erhalten , da acht die nächste gerade Zahl ist Aber wenn Sie diesen Code tatsächlich ausführen, werden Sie feststellen, dass Python abrundet statt aufwärts. Es ist kein Fehler in der runden Funktion selbst, sondern das Ergebnis dieses Fehlers bei der Darstellung von Fließkommazahlen , von Fehlers bei der Darstellung von Fließkommazahlen , Sie in der vorherigen Lektion erfahren haben. Okay. Die nächste Funktion, die sich auf Zahlen in Python bezieht und die Sie vielleicht verwenden möchten, heißt abs, was die Abkürzung für Absolutwert ist. Sie nimmt eine Zahl und gibt ihre Größe ohne das Vorzeichen zurück. Der absolute Wert von 42 ist beispielsweise 42. Gleichzeitig ist der absolute Wert von -42 ebenfalls 42. Sie können die Apps-Funktion Ganzzahlen als auch für Fließkommazahlen In jedem Fall erhalten Sie immer den positiven Wert einer Zahl. Wenn Sie jedoch die ABS-Funktion für eine komplexe Zahl aufrufen , erhalten Sie die sogenannte Größe einer komplexen Zahl, die mit der entsprechenden Formel berechnet wird. einer der nächsten Lektionen werden Sie sich komplexe Zahlen genauer ansehen . Dies sind die wichtigsten Anwendungsfälle für die ABS-Funktion in Python. Schließlich ist die dritte und letzte Funktion, die Sie in dieser Lektion kennenlernen werden, die Potenzfunktion. Sie bietet eine explizitere Möglichkeit eine Zahl auf die angegebene Potenz zu erhöhen verglichen mit dem doppelten Asterix- oder Exponentialoperator, den Sie zuvor kennengelernt haben Die Potenzfunktion benötigt zwei Argumente. Die erste ist die Basis oder die Zahl, die potenziert werden soll. Und das zweite Argument ist der Exponent oder die Potenz, auf die die Zahl erhöht werden soll Wie beim Exponentialoperator können Sie negative oder gebrochene Exponenten und Basen verwenden Während beide Methoden zur Berechnung der Potenz einer Zahl in Python größtenteils gleich funktionieren, akzeptiert die Potenzfunktion ein optionales drittes Argument solange alle drei Argumente ganze Zahlen sind Es ist eine Kurzschreibweise für den Modulo-Operator das Ergebnis einer solchen Potenz Sie können dies kompakter schreiben den dritten Wert als optionales Argument übergeben Bevor wir die Begeisterung beenden, lohnt es sich zu erwähnen, dass die Zahlen in Python einige nützliche Methoden bereitstellen, genau wie Strings, an die Sie sich vielleicht aus einem früheren Abschnitt erinnern Sie können beispielsweise überprüfen, ob eine Fließkommazahl einen Integer-Wert ohne Bruchteil enthält , indem Sie sie als Integer-Methode aufrufen Beachten Sie jedoch, dass Sie zum Aufrufen einer Methode in Python den Punktoperator verwenden müssen , der zufällig auch der Dezimalpunkt in Fließkommaliteralen Um diese Mehrdeutigkeit zu vermeiden, können Sie Ihr numerisches Literal Denken Sie daran, dass ein numerisches Literal ohne Dezimalpunkt eine Ganzzahl darstellt Wenn Sie expliziter sein möchten, können Sie Ihre Zahl alternativ einer Variablen zuweisen Und rufen Sie die Methode eher für die Variable als für das Literal auf eher für die Variable als für das Literal In diesem Fall ist 3,14 keine Ganzzahl, sondern Dreipunkt-Oh Eine weitere nützliche Methode, die für Gleitkommazahlen verfügbar ist, ist das Ganzzahlverhältnis Dies gibt ein Paar von ganzen Zahlen zurück , deren Verhältnis genau dem ursprünglichen Float entspricht In diesem Fall sind die Zahlen ziemlich groß, aber Sie können etwas mehr als drei Viertel versuchen , um ein Verhältnis zu erhalten, das aus kleineren Zahlen besteht Für Ganzzahlen gibt es auch einige hilfreiche Methoden. Welche von ihnen kann Ihnen sagen wie viele Bits Sie benötigen, um eine Zahl im Binärsystem darzustellen Eine Zeichenfolge, die aus den Binärziffern 10, Eins, Null, 10 besteht, steht beispielsweise für die Dezimalzahl 42. Sie benötigen also mindestens sechs Bits, um dieselbe Zahl im Binärsystem originalgetreu auszudrücken Sie können dies bestätigen, indem Sie die Bitlängenmethode auf der Nummer 42 aufrufen die Bitlängenmethode auf der Nummer 42 Es gibt auch eine ähnlich benannte Bit-Count-Methode, die Ihnen sagt, wie viele dieser Bits tatsächlich aktiviert sind. Die ursprüngliche Bitfolge hat drei Einsen und 30, der Rückgabewert ist also drei. Um noch einmal zusammenzufassen, was Sie gerade gelernt haben Python enthält einige eingebaute mathematische Funktionen für die Arbeit mit diesen Zahlen Es hat die Rundungsfunktion, die eine Fließkommazahl entweder auf die nächste ganze Ganzzahl oder auf die angegebenen Dezimalstellen rundet entweder auf die nächste ganze Ganzzahl , die Sie nicht als zweites Argument der Funktion angeben können zweites Argument der Funktion Gleichheiten werden gelöst, indem auf die nächste gerade Zahl gerundet wird Fehler bei der Darstellung von Fließkommazahlen beeinträchtigen jedoch manchmal die erwartete Rundungsrichtung Die AB-Funktion gibt den absoluten Wert einer Zahl oder den Betrag einer komplexen Zahl zurück einer Zahl oder den Betrag einer komplexen Zahl Die Potenzfunktion führt weitgehend dieselbe mathematische Operation wie der Potenzierungsoperator in Python, bietet aber auch eine Kurzschreibweise für die Berechnung des Modulos der resultierenden Sie werden auch lernen, dass die Fließkommazahlen in Python einige Methoden bereitstellen, z. B. die I-Integer-Methode, die überprüft, ob der Wert eine ganze Zahl ist oder nicht. Das Verhältnis als Ganzzahl gibt dagegen ein Paar Ganzzahlen zurück, deren Verhältnis der Fließkommazahl entspricht Ganzzahlen haben auch ihre Methoden. Sie können zum Beispiel feststellen, wie viele Bits Sie benötigen , um sie im Binärsystem darzustellen , oder wie viele dieser Bits beleuchtet sind Als Nächstes lernen Sie, wie Sie Zahlen als Zeichenketten formatieren , wenn Sie sie dem Benutzer zusammen mit anderem Text anzeigen möchten . 59. Als Strings formatierte Zahlen: In dieser Lektion lernen Sie, wie Sie Zahlen stilvoll drucken Oft möchten Sie Ihre Zahlen mit zusätzlichem Text kombinieren , bevor Sie sie dem Benutzer präsentieren. Möglicherweise möchten Sie den Preis eines Produkts in einen hübschen Platzhalter in einer Nachricht mit Vorlagen einfügen hübschen Platzhalter in einer Nachricht mit Vorlagen Traditionell gab es viele Möglichkeiten, Zahlen in Python zu formatieren. Sie können beispielsweise die Formatierungsfunktion aufrufen, die Sie bereits in diesem Kurs gesehen haben, um die Dezimalziffern einer Fließkommazahl aufzudecken. Die meisten Programmierer verwenden heute jedoch formatierten Zeichenkettenliterale oder F-Strings von Python, die einfacher aussehen und noch mehr Funktionalität bieten Sie können eine formatierte Zeichenfolge erstellen indem Sie Ihrem normalen Zeichenkettenliteral entweder einen Klein - oder Großbuchstaben F voranstellen. In den meisten Fällen funktioniert es wie eine normale Zeichenfolge, sodass Sie , indem Sie Ihrem normalen Zeichenkettenliteral entweder einen Klein - oder Großbuchstaben F voranstellen. In den meisten Fällen funktioniert es wie eine normale Zeichenfolge, sodass Sie Ihre Nachricht dort eingeben können. Dieses Produkt kostet beispielsweise 3,90$. Im Gegensatz zu einer normalen Zeichenfolge können Sie mit einer F-Zeichenfolge jedoch zusätzlich einen oder mehrere Platzhalter für Werte angeben oder mehrere Platzhalter für Werte zu einem späteren Zeitpunkt gefüllt werden sollen Angenommen, Sie möchten Ihre Werbebotschaft auf viele Produkte mit unterschiedlichen Preisen reduzieren auf viele Produkte mit unterschiedlichen Preisen Sie können eine Hilfsvariable mit dem Preis eines Produkts deklarieren und dann den konkreten Wert in Ihrer F-Zeichenfolge durch einen Platzhalter ersetzen , indem Sie die geschweiften Klammern verwenden und den Namen Ihrer Variablen einfügen Es hat gut funktioniert. Beachten Sie jedoch, dass die nachfolgende Null im Produktpreis aufgebraucht wurde Zum Glück unterstützen diese geschweiften Klammern eine einfache Formatierungssprache, mit der Sie das Aussehen des Werts in der endgültigen formatierten Zeichenfolge ändern Werts in der endgültigen Um beispielsweise den Preis mit genau zwei Dezimalstellen anzuzeigen , können Sie Ihrem Platzhalter einen optionalen Formatbezeichner hinzufügen Formatbezeichner Der Doppelpunkt trennt einen auszuwertenden Ausdruck, z. B. eine Variable, vom Formatbezeichner In diesem Fall ist der Bezeichner 0,2 F, wodurch die Zahlen auf zwei Dezimalstellen gerundet Der Buchstabe F weist Python an, den Preis als feste Punktzahl anzuzeigen. Wenn ein Preis höher wird, können Sie Kommas einfügen, um den ganzzahligen Teil der größeren Zahl durch Tausende zu gruppieren den ganzzahligen Teil der größeren Zahl durch Tausende Eine weitere nützliche Funktion der formatierten Zeichenketten in Python ist die Möglichkeit, Zahlen als Prozentsätze zu formatieren Wenn Sie beispielsweise eine Bruchzahl wie 0,91 23 haben , können Sie festlegen, dass Python sie automatisch als Prozentsatz anzeigt , der auf die angeforderte Anzahl von Dezimalstellen gerundet die angeforderte Anzahl von Dezimalstellen Y Die Mini-Formatierungssprache ist mächtig und umfangreich Sie haben zwar bisher nur die Grundlagen gesehen, hier sind noch ein paar weitere Beispiele. Sie können das Video jetzt anhalten und es sich ansehen oder sich die beigefügten PDF-Folien später ansehen. Ordnung. In der nächsten Lektion werden Sie sich erneut mit komplexen Zahlen in Python befassen Aber vorher machen wir eine Übung, um die Lektion vollständig zu verstehen 60. ÜBUNG: Einen Prozentsatz anzeigen: Sie sind fast an der Ziellinie, wenn es darum geht, Zahlen in Python zu formatieren. In dieser letzten Übung formatieren Sie einen Dezimalbruch als Prozentwert ohne Dezimalstellen. Du schaffst das. Ich habe Vertrauen in dich. 61. LÖSUNG: Einen Prozentsatz anzeigen: Wenn Sie zwei durch zehn teilen, erhalten Sie eine Fließkommazahl mit einer Dezimalziffer. Sie können dies als Prozentsatz formatieren, indem den prozentualen Sinus als Formatspezifikation verwenden. Wenn Sie dem gefolgt sind, können Sie sich vorstellen, wie Sie Null Dezimalstellen anfordern können. Das ist richtig. Du stellst dem Prozentsinus eine.in Null Syntax können Sie dieselbe Syntax in Für eine kompaktere Syntax können Sie dieselbe Syntax in einem F-String-Literal Okay. Nun, diese Übung war nicht allzu schwierig. Es ist an der Zeit, zu einem anderen Abschnitt dieses Kurses überzugehen , in dem Sie mit dem Benutzer interagieren werden. Danke fürs Zuschauen. 62. Komplexe Zahlen: Ordnung. In dieser Lektion gehen Sie auf einige Grundlagen der Arbeit mit komplexen Zahlen in Python ein. Lassen Sie uns also eintauchen. Da komplexe Zahlen außerhalb der Bereiche des wissenschaftlichen Rechnens und der Computergrafik selten verwendet Bereiche des wissenschaftlichen Rechnens und der werden, wurden sie in diesem Abschnitt zuvor nur kurz erwähnt. diese Lektion aber auch überspringen, wenn Sie kein Interesse daran haben, mit komplexen Zahlen zu arbeiten. Python ist eine der wenigen Programmiersprachen, die native Unterstützung für komplexe Zahlen bietet. Sie können sich eine komplexe Zahl als ein Paar vorstellen das aus dem Realteil und dem Imaginärteil Es gibt zwei Möglichkeiten, komplexe Zahlen in Python zu erstellen. Sie können entweder die eingebaute komplexe Funktion aufrufen , wobei diese beiden Teile als Argumente übergeben werden, oder Sie können eine spezielle Syntax verwenden, um ein komplexes Zahlenliteral zu definieren Beachten Sie den Buchstaben J neben der zweiten Zahl, der die sogenannte imaginäre Einheit angibt Mathematiker verwenden normalerweise den Buchstaben I, um eine imaginäre Einheit zu bezeichnen, aber Python folgt einer Notation, aber Python folgt einer Notation von Ingenieuren verwendet wird, um zu vermeiden, dass er mit einem Kleinbuchstaben L oder einer Ziffer verwechselt einem Kleinbuchstaben L oder wird, die in Ihrem Code vorkommen könnte Wenn Sie die imaginäre Einheit weglassen, wird Ihr komplexes Zahlenliteral zu einem regulären arithmetischen Ausdruck, der zwei wird Ihr komplexes Zahlenliteral zu einem regulären arithmetischen Ausdruck, der zwei Zahlen addiert. Sie können die imaginäre Einheit einer dieser beiden Zahlen in einem komplexen Zahlenliteral zuordnen, um dieser beiden Zahlen in einem komplexen Zahlenliteral Zahlenliteral Wenn Sie nur die imaginären Zahlen in Ihrem Literal haben, addiert Python sie und erzeugt eine komplexe Zahl ohne den Realteil Aber es ist immer noch eine komplexe Zahl. Normalerweise würden Sie einer Variablen wie Z eine komplexe Zahl zuweisen . Die Verwendung des Buchstabens Z für eine komplexe Zahl ist eine historische Konvention, die auf Carl Friedrich Goss zurückgeht auf Carl Friedrich Goss zurückgeht Genau wie Ganzzahlen und Fließkommazahlen haben komplexe Zahlen in Python einige interessante Attribute und Methoden Sie können beispielsweise die Real- und Imaginärkomponenten einer komplexen Zahl anhand ihrer realen und imaginären einer komplexen Zahl anhand ihrer realen und imaginären Beachten Sie, dass die Real- und Imaginärteile als Fließkommazahlen gespeichert werden , auch wenn Sie eine komplexe Zahl in Form von ganzen Zahlen definieren Sie können auch eine Konjugation einer komplexen Zahl berechnen , indem Sie deren Methode Konjugat aufrufen Ein Konjugat dreht das Vorzeichen der imaginären Einheit um. Tatsächlich haben alle Zahlen in Python, einschließlich Ganzzahlen und Fließkommazahlen die Attribute real und image sowie die konjugierte Aus mathematischer Sicht ist das nicht überraschend, da komplexe Zahlen eine Obermenge reeller Zahlen sind Bei Ins und Floats das Real-Attribut und die Methode conjugate die Zahl selbst zurück, während das Bildattribut Komplexe Zahlen unterstützen alle arithmetischen Operatoren, die Sie kennen gelernt haben, mit Ausnahme der Integer-Division und des Modulo-Operators der Integer-Division und des Modulo-Operators Andernfalls können Sie zwei komplexe Zahlen hinzufügen. Sie können sie subtrahieren. Multiplizieren. Und teile sie oder erhebe eins zu einer Macht. Aber Sie können die Geschossteilung nicht verwenden. Sie können auch nicht den Rest einer Division berechnen, die nur für ganze Zahlen definiert ist. Zusammenfassend lässt sich sagen, dass Sie eine komplexe Zahl entweder mit der eingebauten komplexen Funktion oder mit dem komplexen Zahlenliteral definieren können eine komplexe Zahl entweder mit der eingebauten komplexen Funktion oder mit dem komplexen Zahlenliteral definieren Funktion oder mit dem komplexen Zahlenliteral , bei dem der Buchstabe J an den Imaginärteil geklebt Sie können auch auf Ihre komplexen Zahlen, Attribute und Methoden zugreifen, um den Realteil, den Imaginärteil, zu ermitteln und das Konjugat zu berechnen 63. Der Rest (% Modulo) Operator: In Python ist das Prozentsymbol der Restoperator. Dies wird als Modulo-Operator bezeichnet. Der Restoperator führt eine Division durch, aber nicht den Quotienten zurück, sondern In der folgenden Anweisung wird Leftover zwei zugewiesen. Geben wir ein, dass Leftover gleich 17 ist. Geben Sie das perfekte Symbol ein, drei. Lassen Sie uns nun die übrig gebliebene Variable drucken. Wenn ich den Code ausführe, wird das Ergebnis zwei sein. Diese Anweisung ordnet übrig zwei zu, weil 17/3 fünf ist und der Rest zwei ist Der Rest-Operator ist in bestimmten Situationen nützlich. Er wird häufig für Berechnungen verwendet, bei denen Zeiten oder Entfernungen umgerechnet, ungerade oder gerade Zahlen erkannt und andere spezielle Operationen ausgeführt werden. Um den Restoperator besser zu verstehen, werden wir ein Programm erstellen, das die Anzahl der Sekunden vom Benutzer abruft und sie in die Anzahl der Sekunden in eine Stunde, Minute und Sekunden umrechnet . Zum Beispiel würde es 11.730 Sekunden in 3 Stunden, 15 Minuten und 30 Sekunden umwandeln 15 Minuten und 30 Sekunden Und hier ist die Programmausgabe , die wir erstellen werden Jetzt ist es an der Zeit, das Video anzuhalten und es auszuprobieren. In Ordnung, wie bist du zurechtgekommen? Ich hoffe wirklich, dass du es gut versucht hast. Lass uns die Übung zusammen machen und den Code schreiben. Zuallererst werde ich einige Kommentare schreiben. Kommentare sind ein wichtiger Bestandteil der Programmierung. Sie ermöglichen es Ihnen, dem Programmierer, jeden Teil dessen, was Ihr Code tut, zu erklären In der nächsten Zeile werde ich eine Variable namens Gesamtsekunden erstellen eine Variable namens Gesamtsekunden Ich möchte eine Anzahl von Sekunden vom Benutzer erhalten. Konvertiert den Wert in einen Float. Und weist ihn dann der Variablen Gesamtsekunden zu. Ich lasse eine leere Zeile und füge in Zeile vier einen Kommentar hinzu Ermitteln Sie die Anzahl der Stunden. Treten Sie ein. Ich habe insgesamt Sekunden vom Benutzer und möchte sie in Stunden umrechnen. Nennen wir die variablen Stunden. Eine Stunde hat 3.600 Sekunden. Diese Aussage teilt also die Gesamtzahl der Sekunden durch 3.600. Beachten Sie, dass wir den Integer-Divisionsoperator verwenden. Das liegt daran, dass wir die Anzahl der Stunden ohne Bruchteil angeben wollen . Jetzt ist es ein guter Zeitpunkt, um die Anzahl der verbleibenden Minuten zu ermitteln. Ich verwende die variablen Minuten. Zuerst verwende ich den Integer-Divisionsoperator , um die Gesamtzahl der Sekunden durch 60 zu dividieren. Dies gibt uns die Gesamtzahl der Minuten. Dann werde ich den Modulo-Operator verwenden , um die Gesamtzahl der Minuten durch 60 zu teilen und den Rest der Division zu erhalten Das Ergebnis ist die Anzahl der verbleibenden Minuten. Der nächste Schritt besteht darin, die Anzahl der verbleibenden Sekunden zu ermitteln. Nennen wir die Variable Sekunden. Eine Minute hat 60 Sekunden . In dieser Aussage werde ich also den Modulo-Operator verwenden, um die Gesamtzahl der Sekunden durch 60 zu dividieren die Gesamtzahl der Sekunden durch 60 und den Rest der Division zu erhalten Das Ergebnis ist die Anzahl der verbleibenden Sekunden. Der letzte Schritt besteht darin, die Ergebnisse mithilfe einer Print-Anweisung anzuzeigen . A Zuerst werde ich die Stunden ausdrucken. Dann die Minuten. Zuletzt drucke ich den zweiten. Jetzt ist es Zeit, den Code auszuführen. Python wartet darauf, dass der Benutzer die Sekunden einfügt, die er konvertieren möchte. Ich gebe 11,730 Sekunden ein. Sie sind mit der Ausgabe identisch. Auf diese Weise ist es einfacher , die Antwort zu vergleichen. Es funktioniert super. Ich hoffe, Sie haben die Bedeutung des Rest-Operators verstanden . Wenn Sie Fragen haben, lassen Sie es mich bitte wissen. Danke fürs Zuschauen. 64. Zahlen mit der Eingabefunktion lesen: Die Eingabefunktion gibt die Eingabe des Benutzers immer als Zeichenfolge zurück, auch wenn der Benutzer numerische Daten eingibt. Nehmen wir beispielsweise an, Sie rufen die Eingabefunktion auf. Geben Sie die Zahl 72 ein und drücken Sie die Eingabetaste. Der Wert, der von einer Eingabefunktion zurückgegeben wird , ist die Zeichenfolge 72. Dies kann ein Problem sein, wenn Sie den Wert in einer mathematischen Operation verwenden möchten . Mathematische Operationen können nur für numerische Werte ausgeführt werden , nicht für Zeichenketten. Glücklicherweise hat Python eingebaute Funktionen, mit denen Sie eine Zeichenfolge in einen numerischen Typ konvertieren können. Diese beiden Funktionen sind INT und Float. Nehmen wir zum Beispiel an, Sie schreiben ein Lohn- und Gehaltsabrechnungsprogramm und möchten die Anzahl der Stunden ermitteln , die der Benutzer gearbeitet hat Schauen Sie sich den folgenden Code an. Die erste Anweisung ruft die Anzahl der Stunden vom Benutzer ab und weist diesen Wert als Zeichenfolge der Zeichenkettenwertvariablen zu Die zweite Anweisung ruft die INT-Funktion auf und übergibt einen Zeichenkettenwert als Argument Der Wert, auf den der Zeichenkettenwert verweist , wird in einen INT-Wert umgewandelt und der Stundenvariablen zugewiesen. Dieses Beispiel veranschaulicht, wie die INT-Funktion funktioniert, aber sie ist ineffizient, da sie zwei Variablen erstellt Eine enthält die Zeichenfolge, die von der Eingabefunktion zurückgegeben wird, von der Eingabefunktion zurückgegeben und eine andere, die die Ganzzahl enthält, die von der INT-Funktion zurückgegeben wird Der folgende Code zeigt einen besseren Ansatz. Diese eine Anweisung erledigt die gesamte Arbeit wie die beiden zuvor gezeigten Anweisungen, und es wird nur eine Variable erstellt. Diese eine Anweisung verwendet verschachtelte Funktionsaufrufen. Der Wert, der für die Ausgabefunktion zurückgegeben wird , wird als Argument an die INT-Funktion übergeben . So funktioniert es. Es ruft die Eingabefunktion auf, um einen über die Tastatur eingegebenen Wert abzurufen. Der Wert, der von der Eingabefunktion zurückgegeben wird, ist eine Zeichenfolge, die als Argument an die INT-Funktion übergeben wird. Der INT-Wert, der von der INT-Funktion zurückgegeben wird , wird der Stundenvariablen zugewiesen. Nach der Ausführung dieser Anweisung wird die Stundenvariable dem über die Tastatur eingegebenen Wert zugewiesen , der in eine Ganzzahl umgewandelt wurde. Schauen wir uns ein anderes Beispiel an. Angenommen, Sie möchten den Stundenlohn des Benutzers ermitteln. Die folgende Anweisung fordert die Benutzer auf, diesen Wert mit der Tastatur einzugeben, wandelt den Wert in eine Gleitkommazahl um und weist ihn der Lohnsatzvariablen zu I So funktioniert es Es ruft die Eingabefunktion auf, um einen über die Tastatur eingegebenen Wert abzurufen. Der Wert, der von der Eingabefunktion zurückgegeben wird, ist eine Zeichenfolge, die als Argument an die Float-Funktion übergeben wird. Der Float-Wert, der von der Float-Funktion zurückgegeben wird , wird der Lohnsatzvariablen zugewiesen. Nach der Ausführung dieser Anweisung wird die Lohnsatzvariable dem über die Tastatur eingegebenen Wert zugewiesen, der in einen Gleitkommawert umgewandelt wurde Um all dies besser zu verstehen, machen wir eine Übung Angenommen, Sie möchten ein Programm schreiben, den Benutzer auffordert, seinen Namen, sein Alter und sein Einkommen einzugeben , und dann den Wert anzeigt, den der Benutzer eingegeben hat. Hier ist die Programmausgabe. Halte das Video jetzt an und schließe diese Herausforderung ab. In Ordnung, wie bist du zurechtgekommen? Ich hoffe wirklich, du hast es gut versucht. Lass uns die Übung zusammen machen und den Code schreiben. Fügen wir zuerst die Kommentarzeile hinzu. In Zeile zwei wird der Benutzer aufgefordert, seinen Namen einzugeben. Der eingegebene Wert wird der Namensvariablen als Zeichenfolge zugewiesen In Zeile drei wird der Benutzer aufgefordert, sein Alter einzugeben. Der eingegebene Wert wird in eine Ganzzahl umgewandelt und der Altersvariablen zugewiesen In Zeile vier wird der Benutzer aufgefordert, sein Einkommen einzugeben. Der eingegebene Wert wird in eine Gleitkommazahl umgerechnet und der Einkommensvariablen zugewiesen Lassen wir eine Leerzeile und fügen in Zeile sechs einen Kommentar hinzu. In Zeile sieben zeigen wir die Nachricht an. Hier sind die Daten, die Sie eingeben. In Zeile acht wird der Name angezeigt, den der Benutzer eingegeben hat. Zeile neun zeigt das Alter an , das der Benutzer eingegeben hat. Zeile zehn zeigt das Einkommen an, das der Benutzer eingegeben hat. Ja. Die Funktionen INT und Float funktionieren nur, wenn das Element, das konvertiert wird, einen gültigen numerischen Wert enthält. Wenn das Argument nicht in den spezifischen Datentyp konvertiert werden kann , tritt ein Fehler auf, der als Ausnahme bezeichnet wird. Eine Ausnahme ist ein unerwarteter Fehler , der während der Ausführung des Programms auftritt und dazu führt, dass das Programm angehalten wird, wenn der Fehler nicht ordnungsgemäß behoben wird. Führen Sie beispielsweise das Programm aus und geben Sie XYZ als Alter ein. Hier ist der Fehler, der als Ausnahme bezeichnet wird. Ich hoffe, du hast verstanden, wie man Zahlen über die Eingabefunktion liest. Danke fürs Zuschauen. 65. Zahlen und Mathe (ZUSAMMENFASSUNG): Willkommen zurück, alle zusammen. In diesem Abschnitt haben Sie alles über die Arbeit mit Zahlen in Python gelernt. Sie haben gesehen, dass es zwei grundlegende Arten von Zahlen gibt, Ganzzahlen und Fließkommazahlen, und dass Python auch über eine integrierte Unterstützung für komplexe Zahlen verfügt integrierte Unterstützung für komplexe Zahlen Zunächst haben Sie gesehen, wie Sie mithilfe der Operatoren Plus-Minus-Multiplikation, Division und Floordivision grundlegende Arithmetik mit Zahlen Division und Floordivision Sie lernen, wie man arithmetische Ausdrücke schreibt und Sie lernen, wie Sie in PEP 8 arithmetische Ausdrücke in formatieren Dann lernen Sie Gleitkommazahlen kennen und erfahren dass sie möglicherweise nicht Diese Einschränkung hat nichts mit Python zu tun. Es ist eine Tatsache der modernen Datenverarbeitung, die mit der Art und Weise zusammenhängt , wie Fließkommazahlen im Speicher eines Computers gespeichert werden. Als Nächstes haben Sie gesehen, wie man mit runden Zahlen auf eine bestimmte Dezimalstelle rundet und dabei gelernt hat, dass runde Runden zu geraden ist etwas anderes als die Art und Weise, wie die meisten Menschen in der Schule lernen, Zahlen zu runden. Sie haben auch zahlreiche Möglichkeiten gesehen, Zahlen für die Anzeige zu formatieren. Schließlich haben Sie etwas über die in Python integrierte Unterstützung für komplexe Zahlen erfahren , und wir haben eine Reihe von Übungen gemacht um die Themen vollständig zu verstehen. Ich möchte mich bei Ihnen fürs Zuschauen bedanken und wir sehen uns in der nächsten Folge. 66. CHALLENGE: Prozentsatz berechnen: Wenn Sie ein Programm schreiben , das mit dem Prozentsatz arbeitet, müssen Sie sicherstellen, dass der Prozentsatz mit dem Dezimalpunkt an der richtigen Stelle steht, bevor Sie mit dem Prozentsatz rechnen können. Dies gilt insbesondere dann, wenn der Benutzer einen Prozentsatz als Eingabe eingibt. Die meisten Benutzer geben die Zahl 50 ein, um 50% zu bedeuten, 20, um 20% zu bedeuten usw. Bevor Sie Berechnungen mit einem solchen Prozentsatz durchführen , müssen Sie ihn durch 100 definieren, um seine Dezimalstelle um 0,2 Stellen nach links zu verschieben . Lassen Sie uns Schritt für Schritt ein Programm schreiben , das einen Prozentsatz berechnet Nehmen wir an, ein Einzelhandelsunternehmen plant einen flächendeckenden Verkauf, bei dem alle Artikelpreise um 20% reduziert werden Sie müssen darum bitten, ein Programm zu schreiben, mit dem der Verkaufspreis eines Artikels berechnet wird, nachdem der Artikel abgezogen Hier ist der Algorithmus. Erstens, holen Sie sich den ursprünglichen Preis des Artikels. Zweitens, berechne 20% des ursprünglichen Preises. Dies ist die Höhe des Rabatts. Drittens, subtrahieren Sie den Rabatt vom ursprünglichen Preis. Das ist der Verkaufspreis. Viertens, zeigen Sie den Verkaufspreis an. Beachten Sie, dass die Ausgabe genau mit der Beispielausgabe übereinstimmen muss genau mit der Beispielausgabe übereinstimmen Und wenn Sie auf Ausführen klicken, ist dies das Ergebnis, nach dem Sie suchen Jetzt ist es an der Zeit, das Video anzuhalten und es auszuprobieren. In Ordnung, wie bist du zurechtgekommen? Ich hoffe wirklich, dass du es gut versucht hast. Lass uns die Übung zusammen machen und den Code schreiben. Im ersten Schritt erhalten wir den ursprünglichen Preis des Artikels. Wir werden den Benutzer auffordern seine Daten auf der Tastatur einzugeben. In unserem Programm werden wir dazu die folgende Anweisung verwenden. Beachten Sie, dass der vom Benutzer eingegebene Wert in einer Variablen namens Originalpreis gespeichert wird . A In Schritt zwei berechnen wir die Höhe des Rabatts. Dazu multiplizieren wir den ursprünglichen Preis mit 20%. Die folgende Anweisung führt diese Berechnung durch und ordnet das Ergebnis der Rabattvariablen zu In Schritt drei ziehen wir den Rabatt vom ursprünglichen Preis ab Die folgende Anweisung führt diese Berechnung und speichert das Ergebnis in einer Verkaufspreisvariablen Schließlich verwenden wir im vierten Schritt die folgende Aussage, verwenden wir im vierten Schritt die folgende Aussage um den Verkaufspreis anzuzeigen. Führen Sie das Programm aus und geben Sie einen zufälligen ursprünglichen Verkaufspreis ein. Und hier ist der 20% reduzierte Verkaufspreis. Großartig. Ich hoffe, Sie haben es geschafft, das Programm selbst zu erstellen. Wenn Sie Fragen haben, lassen Sie es mich wissen. Tschüss. 67. CHALLENGE: Durchschnittsberechnung: Die Bestimmung des Durchschnitts von Wertegruppen ist eine einfache Berechnung. Addieren Sie alle Werte und dividieren Sie dann die Summe durch die Anzahl der Werte. Dies ist zwar eine einfache Berechnung, es ist leicht, einen Fehler zu machen, wenn ein Programm schreiben, das einen Durchschnitt berechnet Nehmen wir zum Beispiel an, dass die Variablen A, B und C jeweils einen Wert enthalten und wir wollen den Durchschnitt dieser Werte berechnen Wenn wir unvorsichtig sind, könnten wir eine Anweisung wie die folgende schreiben , um die Berechnung durchzuführen Kannst du den Fehler in dieser Aussage erkennen? Wenn es ausgeführt wird, findet die Division zuerst statt. Der Wert in C wird durch drei geteilt. Dann wird das Ergebnis zu A plus B addiert. Das ist nicht die richtige Methode , um einen Durchschnitt zu berechnen. Um diesen Fehler zu korrigieren, müssen wir A plus B plus C in Klammern setzen , wie hier gezeigt Lassen Sie uns Schritt für Schritt ein Programm schreiben, das einen Durchschnitt berechnet Angenommen, Sie haben in Ihrem Informatikunterricht drei Tests abgelegt und möchten ein Programm, das den Durchschnitt der Testergebnisse anzeigt den Durchschnitt der Testergebnisse Hier ist der Algorithmus. Eins, hol dir das erste Testergebnis, zwei, hol dir das zweite Testergebnis, drei, hol dir das dritte Testergebnis. Viertens, berechne den Durchschnitt, indem du die drei Testergebnisse addierst und die Summe durch drei teilst. Zeigt den Durchschnitt an. Beachten Sie, dass die Ausgabe genau mit der Bildschirmausgabe übereinstimmen muss genau mit der Bildschirmausgabe übereinstimmen Und wenn Sie auf Ausführen klicken, ist dies das Ergebnis, nach dem Sie suchen Jetzt ist es an der Zeit, das Video anzuhalten und es auszuprobieren. In Ordnung, wie bist du zurechtgekommen? Ich hoffe wirklich, du hast es gut versucht. Lass uns die Übung zusammen machen und den Code schreiben. Lassen Sie uns zunächst einige Kommentare hinzufügen. In den Schritten eins, zwei und drei fordern wir den Benutzer auf, drei Testergebnisse einzugeben. Wir werden diese Testergebnisse in den Variablen Test one speichern. Test zwei. In Test drei. In Schritt vier berechnen wir den Durchschnitt der Testergebnisse der drei. Wir würden die folgende Anweisung verwenden, um die Berechnung durchzuführen und das Ergebnis in der Durchschnittsvariablen zu speichern . Zuletzt zeigen wir in Schritt fünf den Durchschnitt an. Führen Sie das Programm aus. Geben Sie das erste Testergebnis ein, z. B. 90. Geben Sie das zweite Testergebnis ein, z. B. 80, und geben Sie das dritte Testergebnis ein, beispielsweise 100. Die durchschnittliche Punktzahl ist 90. Ich hoffe, du hast verstanden, wie Average in Python funktioniert. Danke fürs Zuschauen und wir sehen uns in der nächsten Lektion. 68. HERAUSFORDERUNG: Eine mathematische Formel in ein Programmier-Statement konvertieren: Nehmen wir an, Sie möchten einen bestimmten Geldbetrag auf ein Sparkonto einzahlen und es dann für die nächsten zehn Jahre in Ruhe lassen . Nach Ablauf von zehn Jahren möchten Sie 10.000 USD auf Ihrem Konto haben Wie viel müssen Sie heute einzahlen, um das zu erreichen? Sie können die folgende Formel verwenden, um dies herauszufinden. Die Begriffe in der Formel lauten wie folgt. P ist die Gegenwart, Zukunft oder der Betrag, den Sie heute einzahlen müssen. F ist der zukünftige Wert dessen, was Sie auf dem Konto haben möchten. In diesem Fall ist F 10.000$. R ist der jährliche Zinssatz. Und es ist die Anzahl der Jahre, die Sie einplanen müssen , damit das Geld auf dem Konto bleibt. Es wäre praktisch, ein Computerprogramm zu schreiben , um diese Berechnung durchzuführen , weil wir dann mit verschiedenen Werten für die Variablen experimentieren können. Hier ist ein Algorithmus , den wir verwenden können. Erstens, ermitteln Sie den gewünschten zukünftigen Wert, zweitens , ermitteln Sie den jährlichen Zinssatz. Drittens: Ermitteln Sie die Anzahl der Jahre , in denen das Geld auf dem Konto sein wird. Viertens, berechne den Betrag , der eingezahlt werden muss. Fünftens, zeigen Sie das Ergebnis der Berechnung in Schritt vier an. Jetzt ist es an der Zeit, das Video anzuhalten und es auszuprobieren. In Ordnung, wie bist du zurechtgekommen? Ich hoffe wirklich, du hast es gut versucht. Lass uns die Übung zusammen machen und den Code schreiben. Zuallererst werde ich einige Kommentare schreiben. In der nächsten Zeile werde ich eine Variable namens Future Value erstellen . Ich möchte den gewünschten zukünftigen Wert vom Benutzer erhalten. Konvertiert den Wert einen Float und weist ihn dann der zukünftigen Wertvariablen zu Ich lasse eine leere Zeile und füge in Zeile vier einen Kommentar hinzu Rufen Sie den jährlichen Zinssatz ab, geben Sie ein. In der nächsten Zeile werde ich eine Variable namens Rate erstellen. Ich möchte den jährlichen Zinssatz vom Benutzer erhalten. Konvertiert den Wert eine Gleitkommazahl und ordnet ihn dann der Zinsvariablen zu Ich lasse eine Leerzeile. Lassen Sie uns jetzt einen Kommentar hinzufügen. Und dann erstelle ich eine Variable namens Jahre. Und dann erstelle ich eine Variable namens Jahre. Wandle es in eine Ganzzahl um und frage den Benutzer, um wie viele Jahre das Geld wachsen wird. Jetzt hat es begonnen, die Formel in eine Codezeile umzuwandeln. Berechnung des für die Einzahlung benötigten Betrags. Der gegenwärtige Wert entspricht also dem zukünftigen Wert. Dividiert durch 100% zuzüglich des jährlichen Zinssatzes. All das bis an die Macht der Jahre. Der letzte Schritt, den wir benötigen, ist der Wert in der Variablen Barwert. Jetzt ist es Zeit, den Code auszuführen. Python wartet darauf der Benutzer den gewünschten zukünftigen Wert eingibt. Geben wir 10.000 ein. Dann gebe ich den jährlichen Zinssatz ein. Geben wir 0,05 ein, was 5% entspricht. Schließlich gebe ich die Anzahl der Jahre ein, gebe zehn Jahre ein. Und das Ergebnis ist das. Sie müssen den Betrag von 6.139 USD und viele Dezimalzahlen einzahlen . Es funktioniert super Ich hoffe, Sie haben verstanden, wie man eine mathematische Formel in eine Programmieranweisung umwandelt . Wenn Sie Fragen haben, lassen Sie es mich bitte wissen. Danke fürs Zuschauen. 69. Daten und Zeiten: Datumsangaben und Uhrzeiten sind Elemente, mit denen die meisten Leute ziemlich viel gearbeitet haben. Wir vereinbaren Termine in Planveranstaltungen für bestimmte Termine und Zeiten. Der meiste Teil unseres Tages dreht sich rund um die Uhr. Es ist also eine gute Idee, sich anzusehen, wie Python mit der Interaktion mit Daten und Uhrzeit umgeht, insbesondere diese Werte für die spätere Verwendung zu speichern. Wie bei allem anderen verstehen Computer nur Zahlen. Datum und Uhrzeit sind nicht vorhanden. Sie mit Datums- und Zeitangaben als eine der größten Herausforderungen bei der Programmierung zwischen Zeitzonen, Sommerzeit und verschiedenen geschriebenen Datumsformaten arbeiten bei der Programmierung zwischen Zeitzonen, , kann es schwierig sein, den Überblick zu behalten, welche Tage und Zeiten Sie sind referenzieren. Glücklicherweise kann das integrierte Python Datetime-Modul Ihnen helfen, die komplexe Natur von Datums- und Uhrzeiten zu verwalten. Technisch gesehen wird dieser Akt als Importieren eines Pakets bezeichnet. Und Sie werden in den nächsten Lektionen mehr darüber erfahren. Um die aktuelle Uhrzeit zu erhalten, können Sie einfach wichtiges Datum, Uhrzeit, Datum, Zeitpunkt, Datumzeitpunkt eingeben . Jetzt sehen Sie die vollständigen Datums- und Uhrzeitinformationen auf der Uhr Ihres Computers. Sie haben vielleicht bemerkt, dass das Datum und die Uhrzeit im vorhandenen Format ein wenig schwer zu lesen sind . Sehen Sie, dass Sie nur das aktuelle Datum mit dem Zeichenfolgenbefehl in einem lesbaren Formattyp abrufen möchten. Jetzt ist es viel besser. Datetime stellt drei Klassen zur Verfügung, die die High-Level-Schnittstelle bilden , die die meisten Benutzer verwenden werden. Datetime. Datum ist ein idealisiertes Datum, das davon ausgeht, dass der gregorianische Kalender unendlich in die Zukunft und Vergangenheit erstreckt. Dieses Objekt speichert das Jahr, Monat und den Tag als Attribute. Datetime, nicht Zeit ist eine idealisierte Zeit, die sicherstellt , dass es 86.400 Sekunden pro Tag ohne Schaltsekunden gibt. Dieses Objekt speichert die Stunden-, Minutensekunden- und z-Info, Zeitzoneninformationen. Datetime dot datetime ist eine Kombination aus Datum und Uhrzeit. Es hat alle Attribute beider Klassen. Zunächst müssen Sie die drei Hauptklassen aus DateTime mit dem folgenden Code importieren . Jetzt können Sie einige Methoden verwenden, um Tagesinstanzen zu erstellen. Es gibt zwei Methoden, bei denen es nicht erforderlich ist, ganze Zahlen zu verwenden, um jedes Attribut anzugeben, sondern stattdessen einige andere Informationen zu verwenden. Day-to-day erstellt eine Datumspunktdatumsinstanz mit dem aktuellen lokalen Datum. Datetime point erstellt nun eine Datetime Point Tagesinstanz mit dem aktuellen lokalen Datum und der aktuellen Uhrzeit. Werfen wir einen Blick auf einige Beispiele. Ich werde Datumspunkt heute und Datum-Uhrzeitpunkt verwenden, um Instanzen von Datums-, Datums- und Zeitobjektenzu erstellen Datums- und Zeitobjekten Jede Instanz wird in einer anderen Variablen gespeichert. Heute ist eine Datumsinstanz, die nur das Jahr, den Monat und den Tag hat. Jetzt ist eine Datetime-Instanz, die Jahr, Monat, Tag, Stunde, Minute, Sekunde und Mikrosekunden enthält. Wie Sie sehen können, kann die Arbeit mit den Daten und Zeiten und die Programmierung kompliziert sein. Glücklicherweise müssen Sie heutzutage selten komplizierte Funktionen von Grund auf neu implementieren, da viele Open-Source-Bibliotheken zur Verfügung stehen. Dies ist definitiv der Fall in Python, das drei separate Module in der Standardbibliothek enthält , um mit Datums- und Uhrzeitangaben zu arbeiten. Kalender gibt, Kalender und bietet Funktionen, die einen idealisierten gregorianischen Kalender verwenden. Datetime liefert Klassen für die Manipulation von Datums- und Uhrzeitangaben. Zeit stellt zeitbezogene Funktionen bereit, bei denen Daten nicht benötigt werden. Mit dem Zeitbefehl, den Sie verwenden können, um die aktuelle Zeit zu erhalten, können Sie verschiedene Werte für jede der Komponenten , aus denen Datum und Uhrzeit besteht, mit den Werten für Tag, Monat, Jahr, Stunde, Minute, Sekunde und Mikrosekunde abrufen , aus denen Datum und Uhrzeit besteht, mit den Werten für Tag, Monat, Jahr, Stunde, Minute, . Aber es ist außerhalb des Geltungsbereichs dieser Lektion. Sie haben das grundlegende Konzept rund um Datum und Uhrzeit gelernt. Es ist an der Zeit, dass Sie Ihr neues Wissen in den realen Anwendungen anwenden . Danke fürs Zuschauen. 70. Was ist eine Liste: Hallo alle, das ist Andreas, und in diesem Vortrag erfahren Sie, was Listen sind und wie Sie mit dem Element in einer Liste arbeiten können. Listen sind eine der leistungsstärksten Funktionen von Python, mit denen Sie Informationsmengen an einem Ort speichern können. Also, was ist Liste? Eine Liste ist eine Sammlung von Elementen in einer bestimmten Reihenfolge. Sie können eine Liste erstellen, die die Buchstaben des Alphabets enthält, die Ziffern von 0 bis neun, Namen, Farben, was immer Sie wollen. Sie können alles in eine Liste setzen. Listen enthalten komplexe Objekte wie Funktionen oder Klassen oder sogar Module. Die Elemente auf Ihrer Liste müssen in keiner bestimmten Weise miteinander verknüpft sein. Außerdem enthält eine Liste in der Regel mehr als ein Element. Python eckige Klammern zeigen eine Liste in einzelnen Elementen in der Liste sind durch Kommas getrennt. Lassen Sie uns ein Beispiel machen. Öffnen Sie den Editor und beginnen Sie mit der Eingabe. Wir werden eine Liste machen. Lassen Sie uns nennen Apple-Produkte mit vier Elementen. Jetzt drucken wir die Liste aus. Python gibt seine Darstellung der Liste einschließlich eckiger Klammern zurück. Sie können eine Liste auch deklarieren, ohne ihr einen Anfangswert zuzuweisen. Sie können Apple-Produkte gleich zwei eckige Klammern eingeben. Dies ist eine leere Liste, in der keine Elemente enthalten sind. Sie müssen die append-Methode verwenden, um Elemente zur Liste hinzuzufügen. Wir werden später über die Anfügemethode erfahren. Auf die Elemente der Liste kann durch einen Index zugegriffen werden. Um dies zu tun, benennen Sie die Liste und dann innerhalb eines Paares von eckigen Klammern, verwenden Sie eine Indexnummer, wie das, was ich hier zeige, die den Zugriff auf einzelne Elemente innerhalb der Liste ermöglicht. Die Indizierung für diese Liste basiert auf 0. Wenn Sie also eine Liste wie diese mit diesen sechs Elementen haben, beginnen die Indizes mit 0 und wir werden bis zu fünf gehen. Zum Beispiel direkt in der Shell. Das Ergebnis ist iPhone, da 0 der erste Wert der Liste ist. Geben Sie jetzt ein. Und das Ergebnis ist iCloud, weil Index drei der vierte Wert der Liste ist. Wenn Sie versuchen, auf einen Index zuzugreifen, der außerhalb des Bereichs liegt, erhalten Sie den Index außerhalb des Bereichs. Auch, Slicing ist auch zur Verfügung. Slicing ist eine Indizierungssyntax, die einen Teil aus Ihrer Liste exakt. Also in diesem Beispiel, wenn a Ihre Liste ist als in den eckigen Klammern, müssen Sie Zahlen durch einen Doppelpunkt getrennt indizieren, und es wird einen Teil dieser Liste zurückgeben, den wir mit Position m beginnen und bis, aber ohne Index n mit demselben Beispiel von vorher. Und wenn Sie eine 225 genommen haben, erhalten Sie drei Objekte in der Mitte, beginnend bei Index zwei und gehen bis zu Index vier, aber nicht mit fünf. Eine Abkürzung ist verfügbar, indem der erste Index weggelassen wird. Ihr Slice beginnt am Anfang der Liste und geht bis zum zweiten Index. Wenn Sie den letzten Index weglassen, wird es die Folien vom ersten Index erweitern und bis zum Ende der Liste gehen. Und wenn Sie beide Indizes weglassen würden, wird eine Kopie der gesamten Liste zurückgegeben. Und im Gegensatz zu einer Zeichenfolge ist es eine Kopie, kein Verweis auf dasselbe Objekt. Es ist möglich, einen dritten Index nach einem zusätzlichen Doppelpunkt hinzuzufügen. Dieser dritte Index weist auf einen Schritt hin, wird aber manchmal auch Stempel genannt. Wenn Sie also in diesem Beispiel ein Slice hinzufügen, das mit einem Schritt von zwei von 0 auf sechs ging, würden Sie das Objekt bei Index 024 zurückgeben. Alternativ können Sie von hinten auf die Werte einer Liste zugreifen. Das letzte Element in dieser Liste hat einen Index von minus eins. Der zweite letzte hat einen Index von minus zwei und so weiter. Richtig? Und der Python antwortet iCloud, weil dies das, das letzte Element. Sie können auch eine Liste oder einen Teil davon einem Variablentyp zuweisen. So werden die variablen Produkte iPhone, iPad, Mac Air, iCloud. Nun, wenn Sie eingeben, das Ergebnis ist das ErgebnisiPad Komma MAC air, weil Sie Elemente mit dem Index eins auf Index drei minus eins zuweisen. Die Notation eins bis drei wird auch als Slice bezeichnet. Immer wenn wir eine Slice-Notation in Python verwenden, wird das Element am Anfang des Index immer enthalten, aber das Element am Ende wird immer ausgeschlossen. Mit anderen Worten, die Notation 1-2-3 bezieht sich auf die Elemente aus Index zwei, Index vier minus eins, was Index drei ist. Es gibt auch eine komplexere Slice-Notation , die eine dritte Zahl enthält, die als Stepper bekannt ist, aber wir werden es vorerst überspringen. Eine wichtige Funktion besteht darin, anzuhängen, wenn Sie Elemente zu einer Liste hinzufügen möchten, z. B. mit dieser Codezeile, können Sie den Wert iPod am Ende der Liste hinzufügen, die Liste ausdrucken und das Ergebnis sehen. Wenn Sie Elemente aus einer Liste entfernen möchten, verwenden Sie die delete-Anweisung. Angenommen, Sie möchten das Element iPad löschen, das sich in Position eins befindet. Typ: Ein iPad eingeben ist nicht vorhanden. Listen sind entscheidend für die Python Programmierung. Es ist eine Funktion in Python, die wir mehrmals sehen werden. Und es ist wichtig, wenn Sie Programme und Projekte in Python erstellen möchten. In der nächsten Vorlesung werden wir tiefer in Listen eintauchen. Wenn Sie etwas fragen müssen, helfe ich Ihnen gerne weiter. Danke fürs Zuschauen. 71. Arbeiten mit Listen: Hallo an alle. Heute werden wir die Arbeit mit Listen fortsetzen. Also lassen Sie uns einige weitere Funktionen sehen. Wenn Sie mit einer Liste arbeiten. Wenn Sie zwei Listen kombinieren möchten, verwenden Sie die erweiterte Funktion, öffnen Sie den Editor und schreiben Sie das folgende Programm. Führen Sie es aus, und schauen Sie sich die neue Liste an. Großartig. Um besser zu verstehen, wie es funktioniert, kopieren wir den Programmcode und fügen ihn in Python Tutor.com ein. Klicken Sie auf Start, visualisieren Sie Ihren Code jetzt. Und es ist wie die Python Version drei. Fügen Sie den Code ein und klicken Sie auf die Schaltfläche und visualisieren Sie die Ausführung. Suchen Sie alle Arbeit Schritt für Schritt. Wenn ich die Vorwärts-Taste drücke, gehe ich zum nächsten Schritt und sehe die Ausgabe der rechten Seiten. Die erste Zeile erstellt die Apple-Produkte eine Liste mit drei Elementen innerhalb iPhone, iPad und iPod mit Index 012. Durch Drücken der Vorwärts-Taste wird die zweite Codezeile ausgeführt. Es erstellt die Apple-Produkte mit drei Elementen Liste, iCloud, iOS und Air Mac mit Index 012 Ausführung der dritten Zeile, Apple-Produkte eins ist mit Apple-Produkten erweitert, um Komponenten aufzulisten. Also, wenn ich Liste eins ausdrucke, wird die Ausgabe diese sechs Komponenten sein. Ziemlich geradlinig, richtig? Schließen Sie die Website. Ok? Nehmen wir nun an, Sie möchten überprüfen, ob ein Element in einem Listentyp ist. Falsch, natürlich, Büro ist nicht auf der Liste. True, iOS ist n, die Liste. Um ein Element zu einer bestimmten Position hinzuzufügen, verwenden wir die Insert-Funktion. Lassen Sie uns ein Beispiel machen, indem Sie Büro innerhalb der Apple-Produkte eine Liste hinzufügen. Zwei ist die Indexnummer, geben Sie die Liste ein und drucken Sie sie erneut aus. Sehr nett. Remove Funktion, entfernt ein Element aus der Liste, erfordert den Wert eines Elements als Parameter. Lassen Sie uns ein Beispiel machen. Geben Sie ein und geben Sie ein, drucken Sie einen Air Mac wurden aus der Liste entfernt. Geben Sie ein und geben Sie ein, Wenn Sie eine Liste alphabetisch oder numerisch sortieren möchten, verwenden Sie den Sortierfunktionstyp. Und wir haben eine sortierte Liste. Natürlich ist es nicht die beste Liste, um zu verstehen, ob es sortiert ist oder nicht. Bitte üben Sie diese Funktionen aus und wenn Sie Fragen haben, lassen Sie es mich wissen. Vielen Dank für das Anschauen und ich werde Sie in der nächsten Lektion sehen, wie man numerische Listen erstellt. 72. Numerische Listen erstellen: Willkommen zu dieser Lektion und vielen Dank, dass Sie das bisher gemacht haben. Nun gehen wir weiter, wie numerische Listen erstellt werden. Listen sind ideal zum Sortieren von Zahlensätzen in Python bietet mehrere Werkzeuge, mit denen Sie effektiv mit Listen von Zahlen arbeiten können. Sobald Sie verstehen, wie Sie diese Tools effektiv verwenden, wird Ihr Code gut funktionieren. Vergessen Sie nicht, dass, um eine Reihe von Zahlen zu speichern, haben wir viele Anwendungen von der Verfolgung der Highscores eines Spielers, um Temperaturen zu speichern, Populationen, et cetera. Pythons Bereichsfunktion ist vorteilhaft und macht es einfach, eine Reihe von Zahlen zu generieren. Die Bereichsfunktion erzeugt eine Liste von Zahlen und hat den Syntaxbereich Start und Spann. Wenn Sie eine Liste von Zahlen erstellen möchten, können Sie Ergebnisse des Bereichs direkt in eine Liste mit Hilfe der Listenfunktion konvertieren. Wenn Sie eine Liste um einen Aufruf der Bereichsfunktion umschließen, wird die Ausgabe eine Liste von Zahlen sein. Lassen Sie uns ein Beispiel machen. Öffnen Sie den Editor, und geben Sie ein. Führen Sie das Programm aus. Die neue Liste eins bis neun wird auf dem Bildschirm angezeigt. Beachten Sie, dass, wenn der Schritt nicht angegeben wird, eine Liste von aufeinander folgenden Zahlen wie die obige Liste generiert wird, muss der Endwert angegeben werden. Eine seltsame Sache an der Bereichsfunktion ist jedoch , dass der angegebene n-Wert niemals Teil der generierten Liste ist. Um die Zahlen eins bis zehn zu drucken, sollten Sie Bereich 1 Komma 11 verwenden. Wir werden lernen, wie Schleifenfunktionen mit Bereich zu kombinieren und kompliziertere Listen in späteren Vorträgen zu erstellen, wie eine Liste der ersten zehn Quadratzahlen. Danke fürs Zuschauen. 73. Drucklisten: Python bietet viele Möglichkeiten, Informationen auszugeben. Lassen Sie uns nur einige der grundlegendsten Methoden für die Ausgabe von Listen sehen. Nehmen Sie den folgenden Code in den Editor. Hier habe ich versucht, mit vier Autoherstellern im Inneren aufzulisten. Jetzt drucken wir die Liste aus. In diesem Beispiel wird der Operator „splat“ verwendet. Es ist das Asteroidensymbol, auch Positionserweiterung Operator genannt, und eine Auswahl anderer interessanter Begriffe, um die Liste zu entpacken und jedes Element einzeln an die Druckmethode zu senden. Das Argument sep sagt uns, wie jede der gedruckten Ausgaben zu trennen, wobei wir uns auf ein neues Zeilenzeichen verlassen. Führen Sie in diesem Fall den Code aus und sehen Sie das Ergebnis. Python gibt die Liste ein Element nach dem anderen aus. Entfernen Sie nun die Druckzeile und fügen Sie die folgende Zeile in den Code ein. Diese Codezeile nimmt zwei Codezeilen und platziert sie in nur einer einzigen Zeile. Es zeigt auch die Jugend der r just Methode, die richtig die Zeichenfolge rechtfertigt. Die for-Schleifen sind ein wichtiges Element der Python Sprache. Und ich habe einen ganzen Abschnitt, der Schleifen gewidmet ist, führe den Code aus. Sieh dir das an. Es richtete den Inhalt mit dem rechten Rand aus. Okay, jetzt wurde die letzte Codezeile durch die folgende ersetzt. In diesem Fall wird die Ausgabe mit den Punktformatmethoden mit begleitendem Text formatiert und das Ergebnis schließt nicht jedes Mitglied von Autos ein. Der Eintrag 01 stellt Platzhalter für den von Autos gelieferten Wert dar. Führen Sie den Code aus, um zu sehen, dass er mit 0 Eintrag erscheint, das ist Toyota, und der Eintrag eins, der BMW ist. Danke fürs Zuschauen. 74. Tuchen: Tupel sind in jeder Hinsicht mit Listen identisch, außer für ein paar der folgenden Notizen. Tupel werden definiert, indem die Elemente in Klammern anstelle von Listen mit eckigen Klammern eingeschlossen werden. Es sieht in etwa so aus. Die andere wichtige Sache ist, dass Tupel unveränderlich sind. Warum sollten Sie ein Tupel anstelle einer Liste verwenden? Wenn Sie Programme mit Tupeln im Vergleich zu Listen ausführen, die Ausführung schneller, wenn Sie das Tupel manipulieren. Dies wird wahrscheinlich nicht auffällig sein, wenn Sie eine kleine Liste oder ein kleines Tupel haben. Aber wenn dies die großen Arrays von Informationen sind, werden Sie beginnen, einen Leistungsunterschied zu sehen. Es gibt Zeiten, in denen Sie nicht möchten, dass Ihre Daten geändert werden. Wenn Sie Werte als Teil der Sammlung haben und ihr Mentor für die Lebensdauer des Programms konstant geblieben ist, wird die Verwendung eines Tupels vor jeder zufälligen Änderung schützen. Und ich weiß, dass Python Wörterbücher nicht im Mittelpunkt dieser Lektion stehen. Sie werden lernen, dass die Schlüssel zum Erstellen eines Python Wörterbuchs erfordern, dass es einen unveränderlichen Typ gibt. In diesem Fall müssten Sie etwas unveränderliches wie ein Tupel anstelle von Liste verwenden. Wenn Sie eine Sequenz für den Schlüssel verwenden möchten, um ein Tupel zu definieren. Anstatt eckige Klammern für eine Liste zu verwenden, werden Ihre Objekte in Klammern enthalten sein. Hier ist t, das ist ein Tupel. Und auf t zugreift, funktioniert meine Indizierung genauso beim Einführen von Slicing. Und Sie können hier sehen, dass es ein Tupel zurückgibt, sogar Schritte macht. Und einer von euch benutzt den Lieblings-Negativschritt. Und Sie können sehen, dass es hier in der Klammer, diesen Tupeln zurückkehrt und nur bemerkt wird, ja, Sie verwenden immer noch den gleichen Indizierungsstil von eckigen Klammern. Also, was ist so anders? Nun, du kannst es nicht ändern. Wenn Sie also versuchen, Index zwei zu nehmen und es etwas zuzuweisen, werden Sie diese Ausnahme eines Typfehlers auslösen. Das Tupelobjekt unterstützt keine Elementzuweisung. Wenn Sie hier mehrere Objekte erstellen würden, und sie können wieder von verschiedenen Typen sein, und Sie wollten sie einfach auflisten und ein Komma zwischen jedem setzen. Sie werden sehen, dass als Tupel kommt. Und in der Tat, wenn Sie vorhaben, eine Endklammerung mit nichts zu beginnen und den Typ darauf zu überprüfen. Was Sie dort als leeres Tupel haben würden. Was passiert aber, wenn Sie versuchen, ein Singleton-Tupel zu erstellen? Sie sagen, T entspricht nur der Nummer zwei in Ihrer Klammer. Nun, Sie können hier sehen, T hat nicht die Klammer um ihn herum. Und wenn man sich seinen Typ anschaut, ist es nur eine ganze Zahl. Da Klammern auch verwendet werden, um Operatorvorrang für Ausdrücke zu definieren, wird Python den Ausdruck von nur zwei in der Klammer als einfach die ganze Zahl zwei auswerten und einen INT erstellen. Wenn Sie wirklich sagen möchten, dass es ein Singleton ist, müssen Sie einen zusätzlichen Schritt machen , müssen Sie einen zusätzlichen Schritt machen ,der ein abschließendes Komma enthält, das dann als Tupel betrachtet wird. Es ist wahrscheinlich selten, dass Sie ein Singleton-Tupel definieren müssen. Aber wenn du es an einem Beispiel sehen würdest, bist du jetzt bereit. Als nächstes werden wir ein wenig tiefer in die Tupelzuweisung eintauchen , indem wir packen und auspacken. 75. Tuple Verpackung und Auspackung: In diesem Video zeige ich Ihnen die Tupelzuweisung durch Packen und Auspacken. Ein Literal-Tupel, das mehrere Elemente enthält, kann einem einzelnen Objekt zugewiesen werden, z. B. dem Beispielobjekt T. Wenn Sie dieses gepackte Objekt einem neuen Tupel zuweisen, die einzelnen Elemente in die Objekte entpackt, die das neue Tupel mit dem Entpacken muss die Anzahl der Variablen auf der linken Seite mit der Anzahl der Werte innerhalb des Tupels übereinstimmen. Lassen Sie mich, dass Sie das mit etwas Code erkunden. Wie Sie im vorherigen Video gesehen haben, können Sie ein Tupel erstellen, indem Sie die Objekte einfach in eine Reihe von Klammern eingeben, und dann werden sie alle darin in dieses einzelne Objekt packen. Auch hier können Sie über den Index auf sie zugreifen. Hier ist eine interessante Idee. Sie können ein weiteres Tupel von Objekten erstellen, in diesem Fall S1, S2, S3, S4, und könnte es dem von Ihnen erstellten Tupel zuweisen. Ein Moment zu gehen, t. Jetzt werden S1, S2, S3 und S4 dieses Tupel während dieser Zuweisung entpacken und sie in die entsprechenden Objekte platzieren. Jetzt ist es wichtig, dass sie die gleiche Nummer auf beiden Seiten der Zuordnung haben. Wenn Sie versuchen, es S1, S2, S3 gleich t zuzuweisen , werden Sie hier eine Ausnahme als Wertfehler auslösen, es gibt zu viele Werte zum Entpacken. Es erwartete drei auf dieser Seite und t, wie Sie wissen, hat für so wieder, hier ist t. Und was, wenn Sie mit zu vielen gehen? Nun, in diesem Fall erwartete es, fünf zu bekommen, aber T nur zum Verpacken und Auspacken vorgesehen konnte in einer Aussage gemacht werden, wenn Sie wollten. Und hier sind sie. Wir machen Aufgaben wie diese. Es gibt eine Handvoll Situationen, in denen Python es Ihnen ermöglicht, die Klammern zu überspringen. Und das gleiche mit dem Auspacken. Sie können sogar so etwas tun, wo beide Seiten keine Klammern haben. Sogar das Singleton zu erschaffen. Es funktioniert gleich, ob die Klammern eingeschlossen sind oder nicht. Wenn Sie also Zweifel daran haben, ob sie zugewiesen sind, gehen Sie weiter und schließen Sie sie ein. Tupel-Zuweisung ermöglicht ein wenig idiomatischen Python. Häufig haben Sie bei der Programmierung zwei Variablen, deren Werte ausgetauscht werden müssen. Es ist notwendig, einen der Werte in einer temporären Variablen zu speichern. In den meisten Programmiersprachen, während der Swap auftritt, würde es ungefähr so aussehen. So erstellen Sie eine Variable temp, weisen Sie ihm eine zu, zugewiesen B in a und dann sagen B gleich temp. Und da hast du die beiden getauscht. Also wieder, Sie machen eine temporäre Variable, die a hält, b nehmen, sie in a zuweisen und dann diese Temp zurück in sie ziehen, indem Sie sie erneut zuweisen. Das ist der Sumpf. Aber in Python kann der Swap mit nur einer einzigen Tupelzuweisung durchgeführt werden. Hier werden Sie sagen, ein Komma b gleich b Komma a und Sie können sehen, dass der Swap aufgetreten ist. Das war's für heute. Ich hoffe, Sie haben die Lektion genossen. Wenn Sie Fragen haben, lassen Sie es mich wissen. Danke fürs Zuschauen. 76. Arbeiten mit Dictionaries: Hallo Studenten, das ist Andreas, und in diesem Video-Tutorial, werden Sie über Wörterbücher lernen, das ist eine gute Möglichkeit, auf eine organisierte Daten zugreifen. Wenn Sie es geschafft haben, Wörterbücher und Listen zu kombinieren, erstellen Sie eine Datenstruktur in Python. Also lasst uns anfangen. Ein Wörterbuch ist eine Sammlung verwandter Datenpaare. Wörterbuchschlüssel müssen innerhalb eines Wörterbuchs eindeutig sein, Sie können in unserem Beispiel nicht den gleichen Namen zweimal verwenden. Außerdem verwenden wir geschweifte Klammern beim Deklarieren eines Wörterbuchs. Wörterbücher sind dynamisch und können verschachtelt werden. Ein Wörterbuch kann andere Wörterbücher oder Listen enthalten. Ein Wörterbuch enthält seine Schlüsselwertpaare in geschweiften Klammern. Gehen Sie weiter und öffnen Sie Ihre Python -Shell, und lassen Sie uns an einigen Beispielen arbeiten. Also lasst uns voran gehen und ein Wörterbuch definieren und hier einige Namen mit dem Gewicht eines jeden von ihnen setzen . Öffnen Sie die geschweiften Klammern und beginnen Sie mit der Eingabe der Schlüsselwertpaare, Namen und warten. Der Doppelpunkt trennt jeden Schlüssel von seinem zugeordneten Wert. Und denken Sie daran, dass wir Schlüsselpaare Werte mit einem Komma trennen. Schließen Sie unser Wörterbuch mit geschweiften Klammern und drücken Sie die Eingabetaste. Sie können Ihr Wörterbuch einfach aufrufen, indem Sie den Wörterbuchnamen eingeben und eingeben. Eine kurze Notiz hier, wie eine Python Version 3.9, werden Wörterbücher in einer Reihenfolge angezeigt, in der sie definiert sind. Dieses Verhalten ist in früheren Versionen von Python nicht vorhanden, daher kann es zu einer zufälligen Reihenfolge zurückkehren. Sie können einen Wert aus einem Wörterbuch abrufen, indem Sie seinen Schlüssel in den eckigen Klammern wie folgt angeben. Und wenn Sie einen Schlüssel angeben, der kein Wörterbuch ist, erhalten Sie einen Ausdruck. Das Hinzufügen eines Andrew zu Ihrem Wörterbuch ist also nur eine Frage der Zuweisung eines neuen Schlüssels und eines Wertes. Wenn wir also Allen als unseren Schlüssel und die Kilogramm hinzufügen, können Sie sehen, dass Alan hinzugefügt wurde. Wenn Sie einen Eintrag aktualisieren möchten, müssen Sie nur den neuen Wert dem Schlüssel zuweisen. Um einen Eintrag zu löschen, geben Sie einfach die Anweisung delete the teufel ein und geben Sie den Schlüssel an. Und John wird weg sein. Hier habe ich einen absichtlichen Fehler gemacht. Kannst du es finden? Also habe ich versucht, John mit dem J Buchstaben und Großbuchstaben zu löschen, aber innerhalb des Wörterbuchs definieren wir es mit einem kleinen J, wie Sie sehen können. Seien Sie also vorsichtig hier, Schlüssel-Wert-Paare unterscheiden zwischen Groß- und Kleinschreibung. Etwas anderes zu wissen, wenn Sie mit den Wörterbüchern arbeiten. Und das kann verwirrend sein, wenn man anfängt. Wenn Sie mit Liste arbeiten und Sie wissen, dass Sie Elementlisten mit einer Indexnummer zugreifen können. Wörterbücher von Listen können nicht behandelt werden. Sie werden nicht in der Lage sein, auf Werte von einer Indexnummer wie folgt zuzugreifen. Du bekommst eine Ausnahme. Dies liegt daran, dass Python einen Schlüssel erwartet, der sich auf diesen Punkt bezieht. Sie können Energizer als Schlüssel verwenden. Also, wenn ich hier ein neues Wörterbuch starte, und in diesem Fall können wir auf Werte in einem Wörterbuch mit einem 0 oder einem Schlüssel zugreifen , nicht auf einen Index. Definieren eines Wörterbuchs mit geschweiften Klammern und einer Liste von Schlüsselwertpaaren. Es ist in Ordnung, wenn Sie alle Schlüssel und Werte im Voraus kennen. Aber was ist, wenn Sie im Handumdrehen ein Wörterbuch erstellen möchten? Sie können damit beginnen, ein leeres Wörterbuch zu erstellen, das durch leere geschweifte Klammern angegeben wird. Dann können Sie nacheinander neue Schlüssel und Werte hinzufügen. Sobald das Wörterbuch auf diese Weise erstellt wurde, wird auf seine Werte wie jedes andere Wörterbuch zugegriffen. Abrufen der Werte in der Unterliste oder Unterwörterbuch erfordert einen zusätzlichen Index oder Schlüssel. Sie können Wörterbücher für eine Vielzahl von Zwecken verwenden, da es so wenige Einschränkungen für die zulässigen Schlüssel und Werte gibt . Danke fürs Zuschauen. 77. Sätze: Willkommen zurück alle. In dieser Lektion werden wir über Sets lernen. Sie sind eine nützliche Datenstruktur, mit der Sie einige komplexe Operationen effektiver durchführen können. Also, was ein Cent in der Mathematik ist gesetzt ist, ist eine gut definierte Sammlung von verschiedenen Objekten. Die Menge von sogar positiven Zahlen weniger als zehn wäre 2468. Der Satz von perfekten Quadraten von weniger als zehn wäre 149. Der Schnittpunkt dieser beiden Sätze wäre die Zahl für. Eins ist ein Satz in Python. Der eingebaute Set-Typ von Python weist die folgenden Eigenschaften auf. Sie sind unsortiert, die Elemente sind eindeutig und doppelte Elemente sind nicht erlaubt. Und ein Satz selbst kann geändert werden, aber die in einer Menge enthaltenen Elemente müssen hashbar sein. Ein veränderbares Objekt ist also ein Objekttyp, das geändert werden kann, nachdem es erstellt wurde. Hashable Objekte sind hingegen eine Art von Objekt, auf das Sie Hash aufrufen können. Alle unveränderlichen Objekte sind Hash-fähig, aber nicht alle Hash-Objekte sind unveränderlich. Python kann nur Hash-fähige Objekte enthalten. Einige Beispiele, die Sie wahrscheinlich unveränderliche Objekte gesehen haben, sind Tupel, Strings, Ganzzahlen und Booleans. Dies liegt daran, dass diese Objekte geändert werden können, nachdem sie erstellt wurden. Und dann umfasst Hash-Objekte Art alle unveränderlichen Objekte. Listen und Wörterbücher sind auf Hash-fähig. Lassen Sie uns einige Beispiele sehen. Schauen wir uns also Saiten an. Wir können eine Zeichenfolge wie diese erstellen. Und wir können sehen, dass Strings in der Tat unveränderlich sind. Lassen Sie uns versuchen, tatsächlich stumm zu schalten. Wenn ich also versucht habe, ein Zeichen hinzuzufügen oder den ersten Buchstaben in ein anderes Zeichen zu ändern, sind beide ein Typfehler. Dasselbe gilt für ganze Zahlen. Wir können überprüfen, ob Strings und Ganzzahlen sowohl hashbar sind , indem wir die Hash-Methode für sie aufrufen. Also Hash auf S wird nicht Fehler, aber es wird uns eine Zahl geben. Und diese Zahl repräsentiert nur den Hash von s. Listen und Wörterbücher sind auf hashable, was bedeutet, dass es einen Hash auf sie aufruft, gibt uns einen Fehler. Es gibt zwei Möglichkeiten, einen Satz in Python zu definieren, Sie können die set-Funktion verwenden. Zum Beispiel können wir die Liste Apfel und Banane übergeben, die diese Liste konvertiert, die mit zwei Elementen gesetzt hat. Beachten Sie, dass die Reihenfolge nicht genau mit der Liste übereinstimmt, die wir übergeben haben, da die Sets nicht sortiert sind. Mal sehen, was passiert, wenn wir in einem Wörterbuch übergeben. Es wird die Schlüssel der Wörterbücher in einen Satz verwandeln. Wir können auch eine Zeichenfolge übergeben, die heißt, teilen Sie die Zeichenfolge in Zeichen. Und wenn doppelte Zeichen vorhanden sind, werden diese Zeichen nicht enthalten, da Sätze keine Duplikate enthalten können. Zum Beispiel können wir die Listenfunktion mit der gleichen Zeichenfolge verwenden, wobei die gleiche Reihenfolge der Buchstaben und die Duplikate beibehalten wird. Die zweite Möglichkeit, einen Satz zu definieren, besteht darin, geschweifte Klammern zu verwenden. Wenn wir ein leeres Set wollen, könnten wir ein Set wie dieses verwenden. Sets sind wirklich cool, weil sie einen beliebigen Hash-Wert enthalten können und der gleiche Satz nicht den gleichen Werttyp enthalten muss. Also kann ich eine Zeichenfolge von boolean und dann ein Tupel haben. Und das wird funktionieren. Hoppla, stimmt mit Großkapital T. Great. Lassen Sie uns versuchen, einen nicht hashbaren Wert zu übergeben und sehen, was passiert. Listen sind also nicht hashbar und dies ist ein Fehler. Also y Cent, wenn Sie sich manchmal nur um eindeutige Werte kümmern und Ihre Daten nicht bestellt werden müssen. Das ist der scheinbare Unterschied zwischen Sets und Tupeln oder Listen. Sie können auch einige coole Operationen sehr schnell durchführen. Aber der Hauptgrund dafür, dass wir Listen verwenden, ist, dass sie sehr, sehr schnell sind. Was ich damit meine, ist, dass man fast sofort nach der Mitgliedschaft suchen kann. Vielen Dank, dass Sie zugesehen haben. Und wenn Sie Fragen oder Kommentare haben, lassen Sie sie bitte im Q. und a. Udemy-Formular. 78. Wenn Statements: Hallo an alle. In diesem Video-Tutorial erfahren Sie, wie Sie Bedingungstests schreiben, denen Sie alle relevanten Bedingungen überprüfen können. Sie werden lernen, einfach wenn Anweisungen zu schreiben. Und Sie lernen, wie Sie eine komplexere Reihe von if-Anweisungen erstellen , um festzustellen, wann genau die gewünschten Bedingungen vorhanden sind. Der Block, der der if-Anweisung folgt, wird ausgeführt. Wenn die Anweisung Bedingung wahr ist, die Klauseln übersprungen, wenn die Bedingung falsch ist, könnte eine if-Anweisung gelesen werden, als ob diese Bedingung wahr ist. Führen Sie den Code aus. Die if-Anweisung besteht aus dem Schlüsselwort, der Bedingung ein Doppelpunkt und beginnend mit der nächsten Zeile, einem Codeblock. Die Struktur einer if-Anweisung ist die folgende. Und das ist das Flussdiagramm. Lassen Sie uns einige Beispiele machen, öffnen Sie den Editor und schreiben Sie den folgenden Code. Python erfordert die Formatierung von Blöcken mit Einrückung. Es ist sehr wählerisch über Leerzeichen und Einrückungen. Speichern Sie das Programm zuerst, führen Sie den Code aus und sehen Sie das Ergebnis auf dem Bildschirm. Python fordert die Benutzer auf, eine Zahl zwischen 12 einzugeben. Um dies zu tun, verwenden wir die Eingabefunktion. Beachten Sie, dass das Ergebnis als String gespeichert wird. Wenn Sie nun eine eingeben, wird das Programm die erste Druckanweisung ausführen. Vielleicht geben Sie zwei ein, das Programm führt die zweite Druckanweisung aus. Für alle anderen Werte wird das Programm gedruckt, Sie haben keine gültige Nummer eingegeben. Großartig. Lassen Sie uns nun über eine Steigung sprechen, wenn eine Steigung, wenn Anweisung eine einfachere Form einer if-Anweisung und sein Ideal ist eine einfachere Form einer if-Anweisung und sein , wenn Sie nur eine einfache Aufgabe ausführen müssen. Die Syntax ist die folgende. Gehen Sie zum Beispiel zum vorherigen Programm und löschen Sie alle Code-Zeilen mit Ausnahme der ersten. Geben Sie dann die folgende Druckfunktion ein. Wenn wir das Programm ausführen, erhalten wir das gleiche Ergebnis wie das vorherige, aber mit einer geringeren Codezeile. In der nächsten Zeile zeige ich Ihnen viele verschiedene Beispiele für die if-Anweisung in einer Anwendung. Danke fürs Zuschauen. 79. BEITRÄGE der Anwendung der if Statement in einer Anwendung: Sie können die if-Anweisungen auf verschiedene Weise verwenden. In Python bestimmt ein relationaler Operator, wie ein Wert auf der linken Seite eines Ausdrucks dem Wert auf der rechten Seite der Ausdrücke verglichen wird. Immer macht die Bestimmung und gibt einen wahren oder falschen Wert, der die Ausdrücke wahre Wert widerspiegelt. Zum Beispiel, sechs gleich sechs ist wahr, während fünf gleich sechs ist falsch. Die folgenden Schritte zeigen, wie Sie eine if-Anweisung erstellen und verwenden. Lassen Sie uns zunächst eine Variable definieren, die meinen Werttyp genannt wird. Dieser Stempel weist meinem Wert einen Wert von fünf zu. Beachten Sie, dass der Zuweisungsoperator und nicht der Gleichheitsoperatortyp verwendet wird. Dieser Schritt erstellt eine if-Anweisung, die den Wert meines Wertes mit dem Gleichheitsoperator testet . Das Wort if wird in einer anderen Farbe als der Rest der Anweisung hervorgehoben. Typ: Und geben Sie zweimal ein. Wenn Sie zweimal hintereinander die EINGABETASTE drücken, ohne irgendwelche Texte einzugeben, ist der Codeblock ein Ende und die Ausgabe ist diese Phrase. Wenn ich den Wert der Variablen in zehn ändere und denselben Code erneut ausführe, wird keine Ausführung durchgeführt. Auch wenn ich den Wert der Variablen ändere und danach auf 15 und den Code ausführe, wird keine Ausführung durchgeführt. Manchmal möchten Sie mehr als eine Aufgabe ausführen, nachdem Sie eine Entscheidung getroffen haben, solange die nächste Zeile eingerückt ist, ist sie Teil der if-Anweisung. Wenn die nächste Zeile verbeult ist, wird sie die erste Zeile eines Codes außerhalb des if-Blocks. Ein Codeblock besteht aus einer Anweisung und den Aufgaben, die dieser Anweisung zugeordnet sind. Ich werde zwei Druckanweisungen setzen, um zu verstehen, wie es funktioniert. Geben Sie zweimal ein. Jede Zeile, die Sie eingeben, ist Teil des aktuellen IfStatement-Codeblocks. Und wenn Sie zweimal hintereinander die EINGABETASTE drücken, ohne Text einzugeben, führt Python den gesamten Codeblock aus, um mehrere Vergleiche durchzuführen. Wenn Sie verschiedene Bedingungen erstellen, indem Sie relationale Operatoren verwenden und sie kombinieren, um es und logische Operatoren zu verwenden. Nehmen Sie beispielsweise den folgenden Code innerhalb des Python Editors. Führen Sie den Code aus und geben Sie drei ist ein Wert. Die if-Anweisung enthält zwei Bedingungen. Der Vers besagt, dass der Wert größer als 0 sein muss. Sie können diese Bedingung auch als Wert größer oder gleich eins darstellen. Die zweite Bedingung besagt, dass der Wert kleiner oder gleich fünf sein muss. Nur wenn value diese beiden Bedingungen bedeutet, werden die if-Anweisungen erfolgreich sein und den Wert drucken, den der Benutzer eingegeben hat? Wenn ich zehn nehme, gibt die Anwendung nichts aus , weil die Zahl im falschen Bereich liegt. Lassen Sie uns den Code ändern, um eine alternative Aktion bereitzustellen , wenn die Bedingung für eine if-Anweisung falsch ist. Beachten Sie, dass die andere Ursache mit einem Doppelpunkt endet, genau wie bei der if-Anweisung. Wenn Sie einen Codierungsfehler für eine reine Anwendung erhalten, stellen Sie sicher, dass Sie nach Bedarf die Spaltenpriorität überprüfen. Führen Sie den Code aus, und geben Sie zehn ein. Diesmal gibt die Anwendung die Fehlermeldung aus. Lassen Sie uns nun versuchen, eine Menüauswahl eines Restaurants zu erstellen. Das Restaurant bietet Pastor Pizzasalat und Panna Cotta für süß. Nachdem Sie eines der Elemente ausgewählt haben, bringt der Server es zu Ihnen. Das Erstellen einer Menüauswahl erfordert so etwas wie eine if else-Anweisung. Wenn jedoch die LIF-Ursache verwendet wird, ist die LIF-Ursache eine Kombination aus der else-Klausel und einer separaten IF-Anweisung. In den folgenden Schritten wird beschrieben, wie Sie die if, e l i f -Anweisung verwenden , um ein Menü zu erstellen. In jedem Fall werden Auswahlmöglichkeiten mit einem bestimmten Wert verglichen, um eine Bedingung für diesen Wert zu erstellen Wenn keine der Optionen korrekt ist, die else -Klausel standardmäßig ausgeführt, um dem Benutzer mitzuteilen, dass die Eingabeauswahl ungültig ist. Jetzt führe ich den Code aus. Python wartet darauf, dass ich eine Nummer einfüge, die Nachricht ausdrucke und dein Lieblingsmenü auswähle. Ich werde die Nummer drei setzen und die Nachricht erscheint, Sie haben Salat gewählt, offensichtlich, weil drei das Salatmenü ist. Der Entscheidungsprozess findet oft in Ebenen statt. Zum Beispiel, wenn Sie ins Restaurant gehen und Pasta wählen, haben Sie eine Entscheidung der ersten Ebene getroffen. Jetzt fragt der Server, welche Art von Vergangenheit Sie wollen. Zum Beispiel sind ein Stier und ja eine Carbonara. Diese Auswahl wird eine zweite Ebene Entscheidungsfindung in Ebenen mit jeder Ebene, die sich auf die Entscheidung auf einer vorherigen Ebene getroffen wird Verschachtelung genannt. Entwickler verwenden häufig Verschachtelungstechniken, um Anwendungen zu erstellen , die komplexe Entscheidungen basierend auf verschiedenen Eingaben treffen können. Die am häufigsten verwendeten Mehrfachselektionstechniken eine Kombination aus if und if else Anweisungen. Diese Form der Auswahl wird oft als Selektionsbaum bezeichnet. Der folgende Code veranschaulicht, wie eine Auswahlstruktur erstellt wird. Löschen Sie den vorherigen Code, und beginnen Sie mit der Eingabe. Geben Sie eine Zahl zwischen 15 ein. Geben wir drei ein. Geben Sie eine zweite Zahl ein. Jetzt lass uns fünf hineinlegen. Das Ergebnis ist 15, denn dreimal fünf gibt uns 15. Ich werde den Code erneut ausführen und fünf als erste Nummer setzen, und zehn ist die zweite Nummer. Und es druckt die Nachricht falsch zweiten Wert. So funktioniert es großartig. Wenn Sie versuchen, einen Wert außerhalb des angeforderten Bereichs anzugeben, eine Fehlermeldung angezeigt. Die Fehlermeldung ist entweder auf den ersten oder zweiten Eingabewert zugeschnitten , um zu wissen, welcher Wert falsch war. als Hausaufgaben-Übung, Versuchen Sieals Hausaufgaben-Übung,ein Restaurant-Menü mit verschachtelten Decision Statements zu erstellen. Vielen Dank, dass Sie zugesehen haben. Und wenn Sie Fragen oder Kommentare haben, lassen Sie sie bitte im Q und in einem Udemy-Forum. 80. für Schleifen: Hallo, Studenten. Bis jetzt haben wir gelernt, dass die if-Anweisung, aber was, wenn Sie einen Codeblock nur mit einer bestimmten Anzahl von Malen ausführen möchten, können Sie dies mit einer for-Schleife Anweisung tun und der Bereichsfunktion helfen. Und Sie werden eine neue Funktion namens enumerate lernen. Die for-Schleife führt also den Codeblock wiederholt aus , bis die Bedingung in der for-Anweisung nicht mehr gültig ist. In Python kann alles durchlaufen werden, z. B. eine Zeichenfolge, eine Liste oder ein Tupel. Dies wird auch als schrecklich bezeichnet. Die Syntax ist die folgende. Und das ist das Flussdiagramm. Lassen Sie uns ein Beispiel machen, die Shell und beginnen Sie mit der Eingabe. In diesem Programm haben wir eine Liste von Jahreszeiten mit vier Elementen. Die Aussage für Jahre in den Saisons durchläuft die Saisonliste und weist jedes Mitglied der variablen Jahressaison zu. Wenn wir das Programm in First Signs Winter auf das variable Jahr Saison laufen, dann druckt den Wert Winter. Danach durchläuft das Programm die Liste weiter , bis das Ende seiner Liste erreicht ist. Wenn Sie den Elementindex in einer Liste anzeigen möchten, können Sie die Aufzählungsfunktion verwenden. Gehen wir mit der zweiten Zeile und führen Sie das Programm erneut aus. Sie können den Index daneben sehen. Jedes Element ist auf der Liste. Wenn Sie Fragen haben, posten Sie diese bitte im Diskussionsforum. For loop ist ein grundlegendes Konzept und ich möchte, dass Sie es vollständig verstehen. Danke fürs Zuschauen. 81. BEITRÄGE für die Nutzung der für Erklärung: Der beste Weg, um zu sehen, wie eine for-Schleife funktioniert, besteht darin, eine zu erstellen. Wir werden ein Beispiel machen, das eine Zeichenfolge für die Sequenz verwendet. Die for-Schleife verarbeitet jedes der Zeichen in der Zeichenfolge und dreht, bis die Zeichen nicht mehr vorhanden sind. Nehmen Sie den folgenden Code in den Editor. Das Beispiel beginnt mit dem Erstellen eines variablen Buchstaben taub, um die Anzahl der verarbeiteten Buchstaben zu verfolgen. Jedes Mal, wenn die Schleife abgeschlossen ist, wird der Buchstabe num um eins aktualisiert. Die for-Anweisung arbeitet durch die Reihenfolge der Buchstaben in der Zeichenfolge und Dreze, und es platziert jeden Buchstaben der Reihe nach in Buchstaben. Lassen Sie uns den Code ausführen, speichern Sie ihn zuerst, der Buchstabe eins ist ein n-ten, Buchstabe, zwei ist n, und so weiter. Das Programm stoppt, wenn es den letzten Buchstaben des Namens druckt, und das ist der Buchstabe S. Die Bremsklausel macht das Atmen aus der Schleife möglich. Sie platzieren jedoch nicht nur die break-Klausel in Ihrem Code. Sie umgeben es mit einer if-Anweisung, die die Bedingungen für die Ausgabe einer Unterbrechung definiert. Im folgenden Beispiel lassen wir den Benutzer eine Zeichenfolge mit variabler Länge zur Verfügung stellen. Wenn die Zeichenfolge länger als acht Zeichen ist, stoppt die Anwendung die Verarbeitung. Lassen Sie uns den vorherigen Code löschen und an einigen Beispielen arbeiten. Führen Sie den Code aus und geben Sie John ein. Der Name hat weniger als acht Zeichen und druckt ihn aus. Aber wenn ich Alexander tippe, hört die Anwendung auf, sie zu verarbeiten. Und hier ist die Nachricht. Die Zeichenfolge ist zu lang. Manchmal möchten Sie jedes Element in einer Sequenz überprüfen, aber bestimmte Elemente nicht verarbeiten. Die Bruchgesetze treten einfach in die Schleife ein, damit Sie es in dieser Situation nicht verwenden. Die Bruchgesetze-Alternative, die viele Entwickler verwenden, ist die continue Klausel. Wie bei der Bremsklausel erscheint diese weiter Klausel als Teil einer if-Anweisung. Verarbeitung wird jedoch mit dem nächsten Element in der Sequenz fortgesetzt , anstatt vollständig zu beenden. Im folgenden Beispiel, Der Code weigert sich, den Buchstaben D zu verarbeiten, aber jeder andere Buchstabe in Andreas ist Name. Drücken Sie F5, um den Code auszuführen und das Ergebnis anzuzeigen. Es gibt keinen Buchstaben D im Wort. Die Python Sprache enthält die zweite Art der continue-Klausel. Die vorherige Klausel funktioniert fast genauso wie die continue-Klausel, außer dass sie die Vervollständigung des Codes im if-Anweisungsblock ermöglicht, in dem sie erscheint. Bearbeiten Sie den Code und verwenden Sie die letzten Krallen, anstatt den Code fortzusetzen und erneut auszuführen. Die Verwendung der vorherigen Klausel ermöglicht die Nachbearbeitung einer unerwünschten Eingabe. Wenn ich die Position der Druckanweisung ändere, bekomme ich andere Ergebnisse. Python hat eine andere Schleifenklausel, die Sie in anderen Sprachen nicht finden werden. Die else - Klausel macht die Ausführung von Code möglich, wenn Sie keine Elemente des Prozesses in einer Sequenz haben. Geben Sie beispielsweise den folgenden Code ein. Lassen Sie uns den Code ausführen ein Wort eingeben, ich gebe meinen Namen Andreas ein, und die Ausgabe ist die Buchstaben eins nach dem anderen. Jetzt werde ich den Code ausführen, ohne etwas einzugeben und die else-Klausel wird ausgeführt, indem die Nachricht eingegeben wird, die Zeichenfolge ist leer. 82. Während Schleifen: Hey, alle. In der vorherigen Vorlesung haben wir die vier Schleife gelernt, die den Codeblock nur für eine bestimmte Anzahl von Malen ausführt. Im Gegensatz dazu läuft die Wildschleife solange oder während eine bestimmte Bedingung erfüllt ist. Zum Beispiel könnten Sie eine while-Schleife verwenden, um durch eine Reihe von Zahlen zu zählen. Lassen Sie es uns in Aktion sehen. Werfen wir einen Blick auf das Flussdiagramm zuerst. Öffnen wir nun den Leerlauf-Editor und führen Sie den folgenden Code aus. Führen Sie das Programm aus, und es zeigt die Zahlen von 0 bis drei. In der ersten Zeile beginnen wir mit dem Zählen von 0, indem wir die Zahlenvariable auf 0 setzen. Die while-Schleife führt das Programm so lange wie die Zahlen weniger als vier und druckt jede Zahl mit der Zahl plus eine Anweisung, wir fügen eine in jeder Schleife. Die letzte Anweisung gibt die Nachricht aus, um uns zu zeigen, dass das Programm beendet wurde. Python wiederholt also die Schleife viermal und insgesamt, manchmal kann eine Schleife unendlich sein. Die Schleife wird zu einer Endlosschleife, wenn die Bedingung nie falsch wird Sie müssen vorsichtig sein, wenn Sie while-Schleifen verwenden, da diese Bedingung nie zu einem falschen Wert aufgelöst wird. Dies führt zu einer Schleife, die nie endet. Eine solche Schleife wird als Endlosschleife bezeichnet. Im obigen Beispiel, wenn wir die num plus eine Anweisung löschen, wird der bedingte Test dennoch immer als vier auf true ausgeführt und die while-Schleife wird für immer laufen eine Reihe von Nullen wie diese drucken. Wenn Ihr Programm in einer Endlosschleife stecken bleibt, drücken Sie die Steuerung plus c oder schließen Sie einfach das Terminalfenster, das die Ausgabe Ihres Programms anzeigt. Um das Schreiben von Endlosschleifen zu vermeiden, testen Sie jede wilde Schleife und stellen Sie sicher, dass die Schleife stoppt, wenn Sie dies erwarten. Es ist vorteilhaft, einen Programmcode auszuführen, solange der Benutzer will, indem er den größten Teil des Programms in eine while-Schleife setzt, wir definieren einen Beendigungswert und dann werden wir das Programm laufen lassen , solange der Benutzer den schnellen Wert nicht eingegeben hat. Lassen Sie uns den folgenden Code schreiben. Und lassen Sie uns den Python Code ausführen. Ich habe den Dickdarm hier vergessen. Python zeigt zunächst die Eingabeaufforderung an und wartet darauf, dass der Benutzer seine Eingabe eingibt. Was auch immer sie eingeben, wird in der myText-Variable gespeichert und auf dem Bildschirm gedruckt. Danach wertet Python die Bedingung in einer while-Anweisung neu aus. Solange der Benutzer das Wort quit nicht eingegeben wird, wird die Eingabeaufforderung erneut angezeigt und Python wartet auf Eingabe. Wenn der Benutzer quit eingibt, stoppt Python die Ausführung der while-Schleife und das Programm endet. Danke fürs Zuschauen. 83. Brechen und fortsetzen: Willkommen zu dieser Lektion und vielen Dank, dass Sie es so weit gemacht haben. In dieser Vorlesung lernen Sie Aussagen, die innerhalb von Schleifen verwendet werden können. Dort brechen und fortsetzen Schlüsselwörter. Manchmal möchten Sie möglicherweise die gesamte Schleife mit einer bestimmten Bedingung zu beenden ist erfüllt. Um dies zu tun, verwenden wir das break-Schlüsselwort, die break-Anweisung in Python beendet die aktuelle Schleife und setzt Ausführung an der Anweisung genau wie die reguläre Aufschlüsselung fort und sehen, die häufigste Verwendung für den Bruch ist, wenn einige äußere Bedingung ausgelöst wird, die einen übereilten Ausgang aus der Schleife erfordert. Die break-Anweisung kann sowohl in while- als auch for-Schleifen verwendet werden. Lassen Sie uns das folgende Programm eingeben und ausführen, um zu sehen, wie es funktioniert. Ohne das Schlüsselwort break sollte das Programm die Zahlen von fünf zu eins mit dem Schlüsselwort break drucken, das Programm endet vorzeitig an Nummer zwei. Dies liegt daran, dass, wenn die Zahl den Wert von eins erreicht, das break-Schlüsselwort bewirkt, dass die Schleife beendet wird. Beachten Sie, dass wir eine if-Anweisung innerhalb einer while-Schleife verwendet haben. Dies ist eine weit verbreitete Praxis in der Programmierung und eine robuste Funktion, wie wir den Kurs fortsetzen. Dies wird auch als verschachtelte Steueranweisung bezeichnet. Ein weiteres Schlüsselwort für Schleifen ist das Schlüsselwort continue. Die continue -Anweisung in Python gibt ein Steuerelement an den Anfang der while-Schleife zurück. Die continue Anweisung lehnt alle verbleibenden Anweisungen in der aktuellen Iteration der Schleife ab und verschiebt das Steuerelement zurück an den Anfang der Schleife. Es kann sowohl in while- als auch für Schleifen wie Break verwendet werden. Um es besser zu verstehen, ersetzen wir den Befehl break durch die Fortsetzung. Führen Sie das Programm aus. Im Gegensatz zum vorherigen Beispiel weist der continue die if-Anweisung zurück und verschiebt das Steuerelement zurück an den Anfang der Schleife. Auch der Rest der Schleife nach dem Schlüsselwort wird übersprungen, wenn wir Code hatten, natürlich. Schließlich gab es eine frühere Aussage, die keine Operation ist. Die Vergangenheit Dave und hilft, einen Codeblock zu erstellen, ist aber nicht mehr erforderlich. Es ist nicht so nützlich und Sie müssen einfach wissen, was es tut. Nichts mehr. Wenn Sie nicht vollständig verstehen, machen Sie sich keine Sorgen, wir erstellen ein Projekt, das beide Aussagen enthält. Danke fürs Zuschauen. 84. PROJEKT Spiel: Wir werden ein Spiel erstellen, in dem der Computer eine Nummer wählt und der Spieler es erraten. Im Ratespiel denkt Python an eine Zufallszahl. Der Spieler nimmt die Nummer an. Der erste Schritt besteht darin, einen Text von einem Benutzer zu erhalten, indem Sie die Eingabeanweisung verwenden. Beginnen wir mit der Eingabe in den Editor. Die Variablenaufforderung zeigt auf ein Literal. Der Literalname befindet sich zwischen den Klammern. Ich erfasse, was der Benutzer mit einer Variablen namens Spieler eingibt, die Eingabe gibt eine Zeichenfolge zurück, unabhängig von den Playertypen, auch wenn es nur eine Zahl ist, werden Sie eine Zeichenfolge von der Eingabe erhalten. Um die Vermutungen zu vergleichen, müssen Sie die Spieler Gas in eine Zahl umwandeln. Ihr Spiel muss überprüfen, ob die Vermutung mit der Nummer des Computers übereinstimmt. Sagen Sie, dass der Computer zehn ausgedacht hat. Um die Variable zu vergleichen, raten Spieler mit der Zahl, die Sie benötigen, um den Wert in einer Variablen namens Computer-Unterstrich Nummer speichern . Nehmen wir die Variable zu Beginn unseres Programms. Wenn Sie die Vermutung mit der Antwort vergleichen können, können Sie eine Antwort vom Player drucken. Das integrierte I N T nimmt eine Zeichenfolge mit einer ganzen Zahl und ändert sie in etwas, das Python als Zahl erkennt. Denken Sie daran, wann immer Sie codieren, der Doppelpunkt bedeutet, dass ein neuer Codeblock der Zeile nach dem Doppelpunkt und jeder anderen Zeile im Block folgt Sie müssen mit vier Leerzeichen beginnen. Was passiert, wenn der Spieler die falsche Antwort errät? Das Schlüsselwort else ändert den Vorgang des if-Schlüsselworts. Es wird immer ausgeführt, wenn fortfahren. Wenn Codeblock nicht ausgeführt wird, lassen Sie uns eingeben, den Code ausführen und eingeben. Der Codeblock funktioniert einwandfrei. Jetzt müssen wir den Spielern zeigen, ob ihre Vermutung zu hoch oder zu niedrig ist. Mit dem werden wir in den LIF-Block zwischen dem Programm und der if-Anweisung setzen. Also alle lügt die Nachricht falsch. Raten Sie nochmal, und ich werde es durch die beiden High ersetzen. Führen Sie den Code aus, und geben Sie 20 ein. Die Meldung „Hoch“ wird auf dem Bildschirm angezeigt. Sie müssen immer noch etwas einrichten, das der Computer immer fragt, ob der Spieler die Nummer nicht erraten kann. Sie müssen dies tun, indem Sie den Code setzen, der nach den Spielern fragt erraten und seinen Wert während der Schleife testen. Dann mit der break-Anweisung, wenn die richtige Antwort gegeben wird, lassen Sie uns aus der Schleife brechen. Lassen Sie uns den Code bearbeiten. Hier. Wir werden die Schleife brechen. Die Schleifenanweisung ermöglicht es Ihnen, jede Schleife zu beenden, in der sich Python bereits befindet. Unabhängig von umschließenden Schleifen Bedingung. Wenn Sie eine Schleife in einer Schleife haben, die Bremse durch die Schleifenebene angewendet, in der die Bremse erscheint, in unserem Beispiel bricht sie die innere Schleife, die if-Schleife. Um die äußere Schleife zu brechen, müssen Sie sich im Codeblock der äußeren Schleife befinden. Wie können Sie Python dazu bringen, an eine Zahl zu denken, die zufällige Ganzzahl-Funktion, die Rechtshänder aus dem Random-Modul, es gibt Ihnen eine Zufallszahl zwischen zwei Zahlen, die Sie in die Klammer setzen, die folgt Randint. Die Zahl enthält die niedrigste oder höchste Zahl. Wenn Sie eine Zahl zwischen 110 möchten, verwenden Sie random.random eins bis zehn. Das zufällige Modul kommt mit Python, aber im Gegensatz zu den eingebauten Ins, die nicht automatisch geladen werden, ist das zufällige Modul Teil der Python-Standardbibliothek. Wenn Sie es benötigen, müssen Sie es importieren. Warum kann Python nicht einfach alles automatisch laden? Weil es die Programmierung langweilig machen würde. Jedes Mal, wenn Sie ein Programm ausgeführt haben, müssen Sie die Wand wiegen, die es in geladenen allen Modulen in der Standardbibliothek gefunden wurde. Neben dem Zugriff auf die Standardbibliothek ermöglicht Ihnen die wichtige Anweisung auch das Modul zu verwenden , das jemand anderes geschrieben hat als Drittanbieter-Module. Um diese zu verwenden, müssen Sie sie herunterladen und auf Ihrem Computer installieren. Ich habe einen ganzen Abschnitt mit Modulen später im Kurs. Fügen Sie also diese beiden Codezeilen von Anfang an hinzu. Ich habe die Codezeile mit der Zahlenvariable des Computers bearbeitet und eine Zahl von eins bis 50 eingefügt. Wir haben unser Ratespiel beendet und sind bereit, es zu testen, das Programm auszuführen. Es funktioniert großartig. Herzlichen Glückwunsch, Sie haben gerade Ihr erstes Spiel mit Python Programmierung erstellt. Denken Sie daran, dass Sie Befehle in Ihren Code schreiben können eine kurze Erklärung dafür zu geben, was der Code tun soll. 85. Verwenden von Statements mit Listen: Hey, Leute, was ist los? In diesem Video erfahren Sie, wie Sie if-Anweisungen mit Listen verwenden. Sie können ganz einfach eine Liste und eine if-Anweisung kombinieren. Der beste Weg, um die Kombination zu verstehen, ist ein Beispiel. Das folgende Beispiel, um die Liste der Einkäufe in einem Supermarkt zu finden. Öffnen Sie den Texteditor und beginnen Sie mit der Eingabe. Zuerst definieren wir die Liste mit unserer Einkaufsliste wenn das Programm darauf wartet, dass der Benutzer das gewünschte Produkt eingeben kann. Wenn sich das angeforderte Element mit den verfügbaren Elementen in der Liste befindet, druckt Python eine Meldung, dass das Produkt verfügbar ist. Der „else“ -Block gibt eine Meldung die dem Benutzer mitteilt, dass dieser Produkttyp nicht verfügbar ist. Aus dem obigen Beispiel haben wir es geschafft, ein Problem zu lösen, wenn Anweisungen und Listen kombiniert werden. Danke fürs Zuschauen. 86. Verwenden für Loops mit Listen: Hey alle, in der vorherigen Vorlesung haben wir über die for-Schleife gelernt. Wir verwenden for-Schleifen, um einen Codeblock eine bestimmte Anzahl von Malen auszuführen. Ich möchte Ihnen jetzt die Kombination von for-Schleifen mit Listen zeigen. Öffnen wir den Python Editor und beginnen Sie mit der Eingabe des folgenden Programms, das eine Liste von Ärzten im Krankenhaus enthält. Technisch wiederholt eine for-Schleife den Codeblock einmal für jeden Wert in einer Liste. Zum Beispiel, wenn wir es ausführen, druckt dieses Programm die verfügbare Art von Arzt einzeln. Sieh dir das Ergebnis an. In der ersten Zeile haben wir eine Liste der verfügbaren Ärzte im Krankenhaus. Dann drucken wir mit Hilfe der for-Schleife die Nachricht in diesem Krankenhaus, es gibt diese Arztspezialität. Dies ist ein einfaches Beispiel dafür, wie wir eine Liste mit einer for-Schleife kombinieren können. Danke fürs Zuschauen. 87. Verwenden einer Rolle mit Listen und Wörterbücher: Hallo Schüler und willkommen zurück zum Kurs, während wir weiterhin lernen, wie man eine while-Schleife mit Listen und Wörterbüchern kombiniert. Verwendung von while-Schleife mit Listen und Wörterbüchern ermöglicht es Ihnen, viele Eingaben zu sammeln , zu speichern und zu organisieren, die zu untersuchen und zu berichten. Später. In diesem Bericht bitten wir den Benutzer zuerst, ein Passwort einzugeben. Wenn das Kennwort korrekt ist, wird die Anwendung geöffnet. Wenn das Kennwort jedoch falsch ist, wird eine Meldung angezeigt, in der Sie aufgefordert werden, das Kennwort erneut einzugeben. Lassen Sie uns das Programm ausführen und ein Passwort eingeben. Zum Beispiel 1234. Python lässt uns wissen, dass das Passwort falsch ist und fordert uns auf, es erneut zu versuchen. Jetzt werde ich vier Asse eingeben, was das richtige Passwort ist. Kopieren Sie das Programm und fügen Sie es in die Python Tutor Website ein, damit wir es visualisieren können. Wählen Sie Python drei und fügen Sie es dort ein. Drücken Sie die Taste, visualisieren Sie die Ausführung. Die erste Zeile ist eine einfache Nachricht, die den Benutzer auffordert, ein Passwort einzugeben. Dann wartet Python in der zweiten Zeile darauf, dass der Benutzer einen Code eingibt. Der Code wird in meiner Code-Variable gespeichert. In der dritten Zeile haben wir ein Wörterbuch mit dem richtigen Passwort innerhalb von vier Assen. Dann beginnt die Schleife, während die Variable mein Code nicht gleich mit dem richtigen Passwort ist, drucken Sie eine Nachricht, dass der Code falsch ist, und fragen Sie erneut mit dem Code, wenn der Benutzer den Code richtig eingibt, eine Drucknachricht mit korrekten Texten angezeigt, und das Programm wird beendet. So können wir sehen, dass die Kombination von Wild Loop mit Listen oder Wörterbüchern leistungsfähige Programme erstellen kann. Vergessen Sie nicht, diese Website zu nutzen. Es ist eine großartige Übung, vor allem für absolute Anfänger. Danke fürs Zuschauen. 88. Stapel mit Listen erstellen: Ein Stack ist ein Array oder eine Listenstruktur von Funktionsaufrufen und Parametern, die in der modernen Computerprogrammierung und CPU-Architektur verwendet werden. Wie ein Stapel von Platten in einem Buffet, Restaurant oder Cafeteria, Elemente in einem Stapel hinzugefügt oder von der Spitze eines Stapels entfernt werden, ist eine letzte In-, First-Out- oder FIFO-Reihenfolge. Der Prozess des Hinzufügens von Daten zu einem Stapel wird als Push bezeichnet , während Daten von einem Stapel empfangen wird als Pop bezeichnet. Dies geschieht am oberen Rand des Stapels. Der Stapelzeiger zeigt die Stapelausdehnung angepasst wird, wenn Elemente in einen Stapel geschoben oder gepumpt werden. Wenn eine Funktion aufgerufen wird, wird die Adresse der nächsten Anweisung in den Stack geschoben. Wenn die Funktion vorhanden ist, wird die Adresse aus dem Stapel entfernt und die Ausführung wird an dieser Adresse fortgesetzt. Leider stellt Python keinen Stack als Sammlung zur Verfügung. Es bietet jedoch Listen und Sie können eine Liste als vollkommen akzeptablen Stack verwenden. Die folgenden Schritte helfen Ihnen, ein Beispiel für die Verwendung einer Liste als Stapel zu erstellen. In diesem Beispiel erstellt die Anwendung eine Liste und eine Variable, um die maximale Stapelgröße zu bestimmen. Stapel haben in der Regel einen bestimmten Größenbereich. Dies ist zwar ein winziger Stapel, aber es dient gut für die Beispielbedürfnisse. Stempel arbeiteten, indem sie einen Wert an den oberen Rand des Stapels schieben und Werte von den Stacks oben, eine Funktion in Python und durch eine def-Anweisung definiert wurden. In diesem Programm habe ich drei Funktionen definiert. Das Display Stapel, Push und Pop. Wir werden alles über die Funktion erfahren, ist nicht in einem späteren Abschnitt. Also seien Sie vorerst geduldig. Die Schiebepumpenfunktionen führten diese beiden Aufgaben aus. Der Code fügt Anzeige-Stack hinzu, um es einfacher zu machen, den Stack-Inhalt zu sehen ist erforderlich. Len ist eine eingebaute Funktion in Python, Sie können die len verwenden, um auf die Länge eines bestimmten Strings, Arrays, Liste, Tupel, Wörterbuch usw. zu gelangen. Die verbleibenden Codeübungen im Stapel demonstrieren seine Funktionalität, indem sie Werte darauf schieben und sie dann entfernen. für Hauptübungsabschnitte, Tests, Stapelfunktionen Führen Siefür Hauptübungsabschnitte, Tests, Stapelfunktionenden Code aus und schauen Sie sich an, wie Python den Sack mit Informationen füllt und dann einen auf dem Bildschirm anzeigt. Der Stapel enthält derzeit drei Werte, 123, drücken Sie die Eingabetaste. Die Anwendung versucht, einen anderen Wert auf den Stack zu schieben. Der Stapel ist jedoch voll, so dass die Aufgabe fehlschlägt. Drücken Sie erneut die Eingabetaste Die Anwendung Pumpen von Wert von der Spitze des Stapels. Denken Sie daran, dass drei die Spitze des Stapels ist. Das ist also der Wert, der fehlt. Geben Sie erneut ein, und die Anwendung versucht, mehr Werte aus dem Stapel, den sie enthält, zu Pop, was zu einem Fehler führt und ein Stack ist leer. Es ist eine gute Übung, die Ausführung von Python Tutor.com Schritt für Schritt zu visualisieren. Danke fürs Zuschauen. 89. Listen suchen: Die Möglichkeit, eine Liste zu durchsuchen, ist von wesentlicher Bedeutung, wenn Sie Wartungsaufgaben besser verwalten möchten. Mit dem folgenden Code können Sie eine Anwendung erstellen, die die Möglichkeit zeigt, eine Liste nach bestimmten Werten zu durchsuchen. Nehmen Sie den folgenden Code in den Editor. Das Beispiel beginnt mit der Erstellung einer Liste mit dem Namen Apple-Produkte, die Apple-Produktnamen enthält. Außerdem wird eine Variable namens Apple-Produkte erstellt , die den Apple-Produktnamen enthält, den der Benutzer suchen möchte. Die Verstärkung tritt in eine Schleife ein, in der der Benutzer nach einem Apple-Produktnamen gefragt wird , der in Apple-Produkten platziert wird. Solange diese Variable das Wort quit nicht enthält, setzt sie eine Schleife fort, die Eingaben anfordert. Immer wenn der Benutzer einen Apple-Produktnamen eingibt, fordert die Anwendung die Liste auf, die Anzahl der Apple-Produkte aus Währungen zu zählen. Wenn der Wert gleich oder größer als eins ist, enthält die Liste das Apple-Produkt und eine unangemessene Meldung wird auf dem Bildschirm angezeigt. Auf der anderen Seite, wenn die Liste nicht enthält die angeforderte Farbe in alternative Meldung erscheint auf dem Bildschirm. Lassen Sie uns den Code speichern und ausführen. Python fordert Sie auf, den Apple-Produktnamen einzugeben, iPad Enter einzugeben, und Sie erhalten eine Meldung, dass das iPad in der Liste vorhanden ist. Geben Sie nun iMac ein, und Sie sehen eine Meldung, dass das iOS nicht existiert. Geben Sie quit ein, und die Anwendung wird beendet. Der Computer kann Informationen in einer Liste finden, unabhängig davon, in welcher Reihenfolge sie angezeigt werden. Längere Listen sind einfacher zu suchen, wenn Sie sie in einer sortierten Reihenfolge platzieren. Der Hauptgrund, eine Liste in sortierter Reihenfolge zu setzen, besteht jedoch darin, es dem menschlichen Benutzer einfacher zu machen , die Informationsliste enthält zu sehen. Wir werden ein Beispiel machen, das mit einer unsortierten Liste beginnt. Anschließend sortiert er die Liste und gibt sie in der Anzeige aus. Der folgende Code veranschaulicht, wie diese Aufgabe ausgeführt wird. Das Beispiel beginnt mit der Erstellung eines Arrays von Apple-Produkten. Die Apple-Produkte sind derzeit in unsortierter Reihenfolge. Das Beispiel druckt dann die Produkte und die Reihenfolge, in der sie angezeigt werden. Beachten Sie, dass ein Argument für die Druckfunktion verwendet wird, um sicherzustellen , dass alle Produkte und Bäume in einer Zeile verbleiben, wodurch sie leichter verglichen werden können. Sortieren der Liste ist so einfach wie das Aufrufen der Sortierfunktion, nachdem das Beispiel die Sortierfunktion aufruft , die die Liste erneut ausgibt, damit Sie das Ergebnis sehen können. Führen Sie den Code aus. Dies ist ein Namensfehler, da dieses Element sich von diesem Element unterscheidet Großschreibung des ersten Buchstabens. Also lasst uns das auch ändern. Ich lasse ein Leerzeichen in doppelten Anführungszeichen. Führen Sie erneut aus, und Python gibt sowohl die unsortierten als auch die sortierten Listen aus. Möglicherweise müssen Sie Elemente in umgekehrter Reihenfolge zu Zeiten sortieren, um diese Aufgabe zu erfüllen, verwenden Sie die umgekehrte Funktion. Die Funktion muss in einer separaten Zeile angezeigt werden. Fügen Sie hier also die folgende Codezeile hinzu. Führen Sie den Code erneut aus und sehen Sie die Produkte in umgekehrter Reihenfolge an. Danke fürs Zuschauen. 90. Looping: Hey, Leute, was ist los? In diesem Video erfahren Sie, wie Sie eine Schleife durch ein Wörterbuch durchführen. Okay, lasst uns in Aktion treten. Wie Sie bereits wissen, kann ein Wörterbuch Schlüsselwertpaare enthalten. Wörterbuch kann ein paar Einträge haben, aber manchmal enthalten sie große Datenmengen, vielleicht Millionen von Paaren. Deshalb ist es vorteilhaft, ein Wörterbuch zu durchlaufen. Das folgende Beispiel, das ich schreiben werde, hat ein Wörterbuch mit Benutzernamen und Passwörtern von drei Benutzern. Ich möchte alle Informationen im obigen Wörterbuch mit einer for-Schleife den folgenden Code drucken . Lassen Sie uns den zweiten Zeilencode untersuchen. Die for-Schleife muss Variablen, die den Benutzernamen und das Passwort in jedem Paar enthalten. Sie können einen beliebigen Namen für diese beiden Variablen auswählen. Nach diesen beiden Variablen verwenden wir die Methodenelemente, die eine Liste von Schlüsselwertpaaren zurückgibt. Die for-Schleife speichert jedes dieser Paare in den beiden bereitgestellten Variablen. In der nächsten Zeile setzen wir den Benutzernamen und das Passwort, den umgekehrten Schrägstrich n. Die erste Druckanweisung stellt sicher, dass vor jedem Schlüsselwertpaar in der Ausgabe eine leere Zeile eingefügt wird. Sehen Sie sich nun das Ergebnis in der Python -Shell an. Wir könnten das Programm kopieren und es in Python Tutor.com einfügen, wenn wir es in Aktion Schritt für Schritt sehen wollten. Großartig. Vielen Dank für das Ansehen und ich werde Sie in der nächsten Video-Tutorial, glücklich lernen. 91. Ersetzen der Switch-Anweisung durch ein Wörterbuch: Die meisten Programmiersprachen bieten eine Art von switch-Anweisung. Eine switch-Anweisung sorgt für Elegante Menüs Typen, Wahlen. Der Benutzer hat mehrere Optionen, darf aber nur eine von ihnen auswählen. Das Programm nimmt einige Schritte auf der Grundlage der Benutzerauswahl. Hier ist ein Beispiel für eine andere Programmiersprache. Leider kommt Python nicht mit einer switch-Anweisung. Mithilfe eines Wörterbuchs können Sie jedoch die Verwendung einer switch-Anweisung simulieren. Nehmen wir den folgenden Code, um die erforderliche Technik zu demonstrieren. Jede dieser Funktionen definiert eine Aufgabe mit der Auswahl einer Farboption auf dem Bildschirm verbunden ist. Nur einer von ihnen wird zu einem bestimmten Zeitpunkt angerufen. Lassen Sie uns mit der Eingabe des Wörterbuch-Codes fortfahren. Dieser Code ist das Wörterbuch. Jeder Schlüssel ist wie der Fall Teil einer switch-Anweisung, der Wert gibt an, was zu tun ist. Schließlich lassen Sie uns eingeben, die Benutzeroberfläche ist Teil des Beispielcodes. Beginnt mit der Erstellung einer Eingabevariablenauswahl. Dann geht es in eine Schleife, bis der Benutzer einen Wert von drei eingibt. Während jeder Schleife zeigt die Anwendung eine Liste von Optionen an und wartet dann auf die Benutzereingabe. Wenn der Benutzer Eingaben bereitstellt, führt die Anwendung eine Bereichsprüfung darauf durch. Lassen Sie uns den Code ausführen. Python zeigt das Menü an, das darauf wartet, dass Sie einen Optionstyp 0 auswählen und die Anwendung eingeben, die Ihnen mitteilt, dass Sie rot ausgewählt haben und dann das Menü erneut anzeigt. Geben Sie drei ein und drücken Sie die Eingabetaste. Die Anwendung endet. Wie immer können Sie Ihren Code Schritt für Schritt mit Python Tutor.com visualisieren. Danke fürs Zuschauen. 92. Arbeiten mit dem Gegenobjekt: Manchmal haben Sie eine Datenquelle, und Sie müssen einfach wissen, wie oft Dinge passieren, wie z. B. das Aussehen eines bestimmten Elements in der Liste. Wenn Sie eine Shortlist haben, können Sie einfach die Elemente zählen. Wenn Sie jedoch eine lange Liste haben, ist es fast unmöglich, eine genaue Zählung zu erhalten. Die Zählerobjekte, lassen Sie uns die Elemente schnell zählen. Lassen Sie uns ein Beispiel machen, das eine Liste mit sich wiederholenden Elementen erstellt und dann zählt, wie oft diese Elemente erscheinen. Geben Sie den folgenden Code ein. Um das Zählerobjekt zu verwenden, müssen Sie es aus Sammlungen importieren. Das Beispiel beginnt mit der Erstellung einer Liste. Mit sich wiederholenden numerischen Elementen. Sie können leicht sehen, dass einige Elemente mehr als einmal erscheinen, wie Nummer eins, das Beispiel in die Liste in einem neuen Zählerobjekt platziert, Listenzähler. Die Anwendung druckt einen Listenzähler auf verschiedene Arten. Die erste Ausgabe ist der Zähler, wie er ohne Manipulation erscheint. Die zweite Ausgabe druckt die einzelnen eindeutigen Elemente in meiner Liste und die Häufigkeit, mit der jedes Element angezeigt wird. Um sowohl das Element als auch die Anzahl der Erscheinungen zu erhalten, müssen Sie die Funktion des Elements verwenden, wie hier gezeigt. Schließlich zeigt das Beispiel, wie eine einzelne Anzahl aus der Liste mit der get-Funktion zu erhalten. Führen Sie den Code aus, und Python gibt die Ergebnisse der Verwendung des Zählerobjekts aus. Danke fürs Zuschauen. 93. Was sind Funktionen: Funktionen sind eine einfache Möglichkeit, Aktionen mit ihnen zu gruppieren. Sie können einige Gruppen von Aktionen wiederholt ausführen, ohne alle Code-Funktionen erneut eingeben zu müssen. Lassen Sie erklären, was y und function Sie Ihren Code wiederverwenden können. Um eine Funktion zu verwenden. Sie müssen eine, um die Funktion selbst zu finden und die Funktion aufzurufen oder aufzurufen. Hier ist ein einfaches Beispiel, das Ihr Hello World-Programm belohnt , indem Sie eine Funktion öffnen Python -Shell-Fenster verwenden. Drücken Sie zweimal die Eingabetaste, um zur Eingabeaufforderung zurückzukehren. Es tut gar nichts. Jetzt müssen Sie die Funktion aufrufen, damit sie ausgeführt wird. Python ruft die Funktion auf, wenn Sie den Namen der Funktion gefolgt von Klammern schreiben. Der Codeblock einer Funktion ist die Zeile, die der def-Anweisung folgt, bis zur nächsten Zeile, die genauso wie die def-Anweisung eingerückt ist. Wenn der Python das Ende der Funktion erreicht, springt er zurück an die Stelle, an der die Spalte aufgetreten ist, zurück mit den Klammern. Die Regeln für die Benennung einer Funktion oder viel wie die Regeln für die Benennung einer Variablen. Sie müssen mit einem Buchstaben oder einem Unterstrich beginnen. Sie sollten Kleinbuchstaben sein. Sie können keine Zahlen haben. Sie können beliebig lang sein, aber halten Sie sie kurz. Sie können nicht mit einem Python Schlüsselwort identisch sein. Funktionen haben eine spezielle Art von Kommentar, die eine doc-Zeichenfolge genannt wird. Der Hauptzweck eines Docstrings ist es, zu erklären, was die Funktion tun soll. Dies bedeutet, dass jemand, der Ihren Code durchsucht, versteht was die Funktion tut, ohne den Code selbst herauszufinden. Um einen Docstring zu erstellen, fügen Sie ein String-Literal in dreifachen Anführungszeichen als erste Zeile des Codeblocks der Funktion hinzu. Wie unser Beispiel sind Funktionen äußerst nützliche und leistungsfähige Werkzeuge in der Programmier-Toolbox, da sie Ihnen erlauben, Ihr Programm in aussagekräftige Blöcke zu trennen. In der nächsten Vorlesung werden wir einige integrierte Python Funktionen erklären. Danke fürs Zuschauen. 94. eingebautes Funktionieren: Hallo Studenten und herzlichen Glückwunsch, Sie haben es so weit geschafft. Jetzt sind Sie mit Schleifen vertraut und haben wahrscheinlich begonnen, Ihre eigenen kleinen Projekte zu erstellen. In diesem Video-Tutorial werden wir einige der nützlichsten integrierten Funktionen in Python lernen. Lassen Sie uns mit der Len-Funktion beginnen. Die len Funktion zählt die Länge eines Wortes. So können Sie die len Funktion eines String-Werts oder einer Variablen übergeben, die eine Zeichenfolge enthält. Und die Funktion wertet den ganzzahligen Wert der Anzahl der Zeichen in dieser Zeichenfolge aus. Lassen Sie uns einige Beispiele in der Shell machen. Typ: Das Ergebnis ist fünf, weil das Wort hallo fünf Zeichen enthält. Ein weiteres Beispiel. Zuerst fordert das Programm den Benutzer auf, seinen Namen einzugeben, geben Sie Ihren Namen ein und drücken Sie die Eingabetaste. Dann zählt Python das Zeichen des Namens und zeigt das Ergebnis an. Großartig. Wenn Sie eine Liste von Zahlen erstellen möchten, können Sie das Ergebnis eines Bereichs direkt mit der Listenfunktion in eine Liste umwandeln. Die Bereichsfunktion macht es einfach, eine Reihe von Zahlen zu generieren. Dann können Sie die Listenfunktion verwenden, um den gleichen Satz von Zahlen in Liste zu konvertieren. Okay, lassen Sie es uns im Aktionstyp sehen. Wir haben eine Liste von Zahlen von eins bis neun erstellt. Schließlich einige eingebaute Funktionen, die uns helfen, einfache Statistiken wie Minimum, Maximum und einige zu berechnen , habe ich bereits eine Liste namens num erstellt. Lasst uns tippen. Das Ergebnis ist eins. Natürlich. Das Ergebnis ist neun. Das Ergebnis ist 45. Es gibt Dutzende von integrierten Funktionen in Python, aber keine Sorge, Sie werden nur die nützlichen lernen. Danke fürs Zuschauen. 95. So definieren deiner Funktion: Willkommen zurück alle. Eine praktische Funktion von Python besteht darin, Ihre Funktionen zu definieren und sie im gesamten Programm zu verwenden. Erstellen Sie Ihre Funktion. Ja, das ist richtig. Hier ist die Syntax zum Definieren einer Funktion. Lassen Sie uns nun die Syntax im Detail erklären. Die def-Anweisung teilt dem Programm mit, dass der Code aus der nächsten Zeile Teil der Funktion ist. Return wird verwendet, um eine Antwort von der Funktion zurückzugeben. Sobald die Funktion die return-Anweisung ausführt, wird die Funktion beendet. Wenn Ihre Funktion keinen Wert zurückgeben muss, ist diese return-Anweisung nicht erforderlich, oder Sie können zurückgeben none schreiben. Lassen Sie uns nun unsere erste Funktion definieren, öffnen Sie Leerlauf und Typ. In Zeile eins geben wir die Überschrift enthält taub und den Namen einer Funktion, Klammern und schließlich einen Doppelpunkt. Die nächste Zeile bildet den Funktionskörper. Führen Sie nun das Programm aus. Die ganze Definition definiert die Bedeutung des Namens my_function, aber es tut nichts anderes. Die Definition selbst lässt noch nichts gedruckt werden. Deshalb können Sie nichts und sichtbar in der Shell sehen , nachdem Idol die Ausführung eines Programms beendet hat, aber seine Version der Shell merkt sich Funktionsdefinitionen aus dem Programm. Jetzt in der Shell Geben Sie ein. Python geht zurück und betrachtet die Definition und führt dann den Code innerhalb der Funktionsdefinition aus und druckt natürlich die Nachricht. Lassen Sie uns jetzt etwas anderes versuchen. Typ: Nichts passiert ohne Klammern. Es identifiziert den Funktionscode ist der Wert und geben Sie die Position im Speicher des Codes. Alles klar, jetzt eine Funktion, die die return-Anweisung verwendet. In diesem Programm definieren wir eine Funktion mit zwei Zahlen und geben die Summe dieser Zahlen zurück. Geben Sie die Shell ein. Geben Sie ein. Können Sie erraten, warum wir diesen Syntaxfehler hatten? Die Antwort ist einfach. Wir haben die Eingabetaste nicht zweimal nach dieser Zeile gedrückt, also haben wir nicht wirklich die Funktionssumme zwei Zahlen definiert. Lassen Sie uns die Funktion erneut ausführen. Ok, jetzt tippt. Natürlich ist das Ergebnis 11. Ich hoffe, dass wir einen Einblick bekommen, wie wir unsere Funktionen definieren können. Danke fürs Zuschauen. 96. Mehr More Funktionen: Willkommen zurück alle. In dieser Lektion werden wir uns fünf integrierte Funktionen ansehen , die häufig von Python Programmierern verwendet werden. Ich werde beschreiben, was sie tun und wie sie zu verwenden sind, und zeigen Ihnen dann Beispiele, wie sie in Ihren Programmen helfen können. Die ABS-Funktion gibt den absoluten Wert einer Zahl zurück , der den Wert einer Zahl ohne ihr Vorzeichen darstellt. Zum Beispiel ist der absolute Wert von zehn zehn und der absolute Wert von negativen zehn zehn ist zehn. Um die ABS-Funktion zu verwenden, rufen Sie sie einfach mit den Zahlen oder Variablen als Parameter wie folgt auf. Sie können die ABS-Funktion verwenden, um etwas wie berechnen eine absolute Menge an Bewegungen eines Charakters in einem Spiel, unabhängig davon, in welche Richtung, dass der Charakter des Reisens. Zum Beispiel, der Charakter nimmt drei Schritte nach rechts, positive drei, und dann zehn Schritte nach links, negative zehn oder minus zehn. Wenn uns die Richtung positiv oder negativ nicht wichtig wäre, wäre der absolute Wert dieser Zahlen 310. Sie können dies in einem Brettspiel verwenden, bei dem Sie zwei Würfel rollen und dann Ihren Charakter oder die maximale Anzahl von Stempeln in eine beliebige Richtung bewegen , basierend auf der Summe der Würfel. Wenn wir nun die Anzahl der Schritte in einer Variablen speichern, können wir feststellen, ob sich das Zeichen mit dem folgenden Code bewegt. Möglicherweise möchten wir einige Informationen anzeigen, wenn der Charakter so gestaltet ist, dass er sich bewegt. In diesem Fall werden wir nur zeigen Zeichen bewegt sich. Wenn wir die if-Anweisung nicht verwendet haben, könnte so aussehen. Wie Sie sehen können, macht die Verwendung von ABS die Aussage nur etwas kürzer und leichter zu verstehen. Der Name Bool ist die Abkürzung für Boolean. Das Wort Programmierer verwenden, um eine Art von Daten zu beschreiben , die einen oder zwei mögliche Werte haben können, in der Regel entweder wahr oder falsch. Die bool-Funktion macht einen einzelnen Parameter und gibt entweder true oder false basierend auf seinem Wert zurück. Wenn bool für Zahlen verwendet wird, gibt 0 false zurück, während jede andere Zahl true zurückgibt. Hier erfahren Sie, wie Sie bool mit verschiedenen Zahlen verwenden können. Wenn Sie bool für andere Werte wie Strings verwenden, wird false zurückgegeben, wenn kein Wert für die Zeichenfolge vorhanden ist, also das Schlüsselwort none oder eine leere Zeichenfolge. Andernfalls wird es true zurückgeben, wie hier gezeigt. Die bool-Funktion gibt auch false für Listen, Tupel und Maps zurück, die keine Werte enthalten, sind wahr, wenn sie dies tun. Sie können bool verwenden, wenn Sie entscheiden, ob ein Wert zentriert wurde. Wenn wir zum Beispiel Leute, die unser Programm benutzen, bitten, das Geburtsjahr einzugeben, könnte unsere if-Anweisung bool verwenden, um den Wert zu testen, den sie eingeben. der ersten Zeile dieses Beispiels werden Eingaben verwendet, um zu speichern, wenn eine andere Person auf der Tastatur das variable Jahr eingibt. Durch Drücken der Eingabetaste in der nächsten Zeile, ohne etwas anderes einzugeben, wird der Wert der Eingabetaste und der Variablen gespeichert. In der folgenden Zeile überprüft die if-Anweisung den booleschen Wert der Variablen nach der Verwendung der rstrip-Funktion, die Leerzeichen in Andrew-Zeichen vom Ende der Zeichenfolge entfernt. Weil der Benutzer nichts eingegeben hat. In diesem Beispiel gibt die Funktion bool false zurück, da diese if-Anweisung das Schlüsselwort not verwendet. Es ist eine Art zu sagen, tun Sie dies, wenn die Funktion nicht wahr zurückgibt. Und so druckt der Code, müssen Sie einen Wert für das Jahr Ihrer Geburt eingeben. In der nächsten Zeile. Die eval Funktion, kurz für evaluation, nimmt eine Zeichenfolge als Parameter und führt sie durch, als wäre es ein Python Ausdruck. Zum Beispiel wird Eval Print, Wow, tatsächlich den Anweisungsdruck ausführen. Nun, die eval Funktion funktioniert nur mit einfachen Ausdrücken wie den folgenden. Und die eval Funktion wird oft verwendet, um Benutzereingaben in Python Ausdrücke zu verwandeln. Zum Beispiel können Sie ein einfaches Rechnerprogramm schreiben, das Gleichungen liest, die in Python eingegeben wurden, und dann berechnen Schrägstrich wertet die Antworten aus. Da eine Benutzereingabe als Zeichenfolge gelesen wird, muss Python sie in Zahlen und Operatoren konvertieren, bevor sie Berechnungen durchführen. Die eval Funktion macht diese Konvertierung erleichtert. In diesem Beispiel verwenden wir Eingaben, um zu lesen, was der Benutzer in Ihre Variable eingibt, Ihre Unterstrichberechnung. In der nächsten Zeile geben wir den Ausdruck fünfmal 20 ein, vielleicht Ihr Alter multipliziert mit der Anzahl der Wochen in einem Jahr. Wir verwenden E-Mail, um diese Berechnung auszuführen, und das Ergebnis wird in der endgültigen Zeile gedruckt. Die genaue Funktion ist wie das Böse, außer dass Sie sie verwenden können, um kompliziertere Programme auszuführen. Der Unterschied zwischen den beiden besteht darin, dass E-Mail einen Wert zurückgibt, etwas, das Sie als Variable speichern können, wo genau wie nicht. Hier ist ein Beispiel. In den ersten beiden Zeilen erstellen wir eine Variable mit einer mehrzeiligen Zeichenfolge, die zwei Druckanweisungen enthält, und verwenden dann Executor für die Zeichenfolge. Sie könnten exakt verwenden, viele Programme in Ihrem Python Programm liest aus Dateien, wirklich Programme innerhalb von Programmen. Dies kann sehr nützlich sein, wenn lange komplizierte Anwendungen geschrieben werden. Zum Beispiel könnten Sie ein Roboterspiel erstellen. Wir sind zwei Roboter bewegen sich um einen Bildschirm und versuchen, einander anzugreifen. Spieler des Spiels würden die Anweisungen für ihre Roboter zur Verfügung stellen. Wie viele Python Programme würden die Roboter gewinnen in diesen Skripten lesen und exakte Ausführung verwenden. Die Bereichsfunktion, wie wir bereits gesehen haben, wird hauptsächlich in for-Schleifen verwendet, um einen Codeabschnitt eine bestimmte Anzahl von Malen zu durchlaufen die die ersten beiden Parameter gegeben sind, um den Start und den Stopp anzuordnen oder zu nennen. Sie haben den Bereich dieser beiden Parameter im früheren Beispiel mit der Funktion len gesehen , um mit einer Schleife zu arbeiten. Die generierten Zahlen beginnen mit der Zahl, die als Purse-Parameter angegeben wird , und N mit einer Zahl, die um eins kleiner als der zweite Parameter ist. Im Folgenden wird beispielsweise gezeigt, was passiert, wenn wir die Zahlen drucken, die zwischen 05 erzeugt werden. Die Bereichsfunktion gibt tatsächlich ein spezielles Objekt genannt einen Iterator, der eine Aktion mehrmals wiederholt. In diesem Fall gibt es bei jedem Aufruf die nächsthöhere Zahl zurück. Sie können den Iterator in eine Liste mit Hilfe der Funktionsliste konvertieren. Wenn Sie dann den Rückgabewert beim Aufrufen von Bereich drucken, sehen Sie auch die darin enthaltenen Zahlen. Sie können auch einen dritten Parameter zum Bereich hinzufügen, der Schritt genannt wird. Wenn der Schrittwert nicht enthalten ist, wird standardmäßig die Nummer eins als Schritt verwendet. Aber was passiert, wenn wir die Nummer zwei als Schritt übergeben? Hier ist das Ergebnis. 97. Globale und lokale Scopes: Der Umfang ist etwas, das beim Starten der Programmierung zunächst schwer zu verstehen ist und Globals, Einheimische und Vars ermöglichen es Ihnen, den Umfang ein wenig besser zu verstehen. Dies wird am besten im Rahmen eines Programms demonstriert. Also hier können Sie ein Programm sehen, mit einem gleich eins gleich der Zeichenfolge global und c ist gleich der Zeichenfolge ein anderes global. Aber wie Sie innerhalb einer Funktion wissen, können dieselben Variablennamen mit verschiedenen Werten neu definiert werden und sie beziehen sich nicht auf dieselbe tatsächliche Variable. Also hier eine Funktion definieren, bei der a auf zwei gesetzt wird, wird b auf diese Zeichenfolge lokal gesetzt. Und dann werden diese beiden Werte ausgedruckt. der Zwischenzeit werden wir im Rahmen unseres Main die Werte von a und B. ausdrucken dann rufen Sie die Funktion auf, die diese Werte ausdruckt und lokale Werte von ihnen finden muss. Und dann werden wir ein und B erneut drucken, um zu sehen, ob sie dauerhaft verändert wurden oder nicht, während sie in Funktion sind. Lassen Sie uns sehen, dass das Programm läuft. Sie können hier sehen, die im globalen Bereich waren. Also, das ist diese Zeile hier. Und dort haben wir die lokalen Versionen von a und b ausgedruckt. Wenn wir dann wieder im globalen Bereich sind, sind a und B zurück mit Werten, die wir dort erwarten würden. Jetzt ist es manchmal schwierig zu wissen, welche Variablen in einem bestimmten Bereich definiert wurden oder für Sie verfügbar sind. Dieses Beispiel ist ein ziemlich einfaches Programm, aber zu verstehen, was los ist, ist ein komplizierteres Programm und das kann schwieriger sein. Eine Funktion, die besonders nützlich ist, ist vars. Wenn wir drucken vars, Es wird zeigen, welche Variablen in diesem Bereich verfügbar sind, und es wird sie in Form eines Wörterbuchs ausdrucken. Das Programm wird ausgeführt. Sie können sehen, dass wir vars ausgedruckt haben, die verfügbaren Variablen in diesem lokalen Bereich, R, a ist gleich zwei und b ist gleich Local, was ausgedruckt wurde. Wenn wir jedoch diesen Code von dieser Zeile nehmen, so genau das Gleiche. Vars drucken. Wenn wir das hier setzen, nachdem wir wieder im globalen Bereich sind, werden Sie sehen, dass mehr Werte verfügbar sind. Also hier haben wir diese viel größeren Wörterbuchwerte. Aber das Wichtigste ist für uns an diesem Punkt, ist, dass a gleich eins ist, B gleich global, und C hat einen Wert von einem anderen globalen. Je nachdem, in welchem Bereich wir uns befinden, stehen verschiedene Werte zur Verfügung. Wie Sie gesehen haben, sind dies die Vars, die im globalen Bereich verfügbar sind. Und anstatt zu drucken, können vars, mit der Funktion Globals drucken, was uns die globalen Bereichsvariablen an jedem Punkt gibt. Hier können Sie sehen, dass es die gleiche Ausgabe gibt, weil die Vars die globalen Vars sind, wenn sie im globalen Bereich gedruckt werden. Ich denke jedoch, dass dies das Wasser leicht schlammig machen könnte, weil es eine andere Funktion ist. Es veranschaulicht nicht den Unterschied in den Variablen, die in der Funktion verfügbar sind. Und der globale Bereich ist derselbe, weil Sie Globals innerhalb der Funktion ausdrucken könnten . Also, wenn das ausgedruckt wird, während innerhalb der Funktion. Wenn wir also Globals verschieben, die innerhalb der Funktion gedruckt werden sollen, können Sie sehen, dass dies die lokalen Variablen sind und dies die globalen Variablen sind. Wenn dies ausgedruckt ist, können Sie es genau zur gleichen Zeit sehen. Der globale Wert von a ist eins und b global, während a 2x und B lokal ist. Das kann also ein bisschen verwirrend werden. Aber es ist sicherlich wirklich nützlich, Vars ausdrucken zu können, weil Sie verstehen können , welche Variablen Ihnen an diesem Punkt in diesem Bereich zur Verfügung stehen. Und wenn Sie sich nicht sicher sind, in welchem Funktionsumfang ausgeführt wird, können Sie Vars verwenden, um zu verstehen, was vor sich geht. Aber es gibt etwas anderes, das auch das Wasser leicht verstümmelt, was ist, wenn wir darauf hinweisen, Siehe, es ist nicht innerhalb dieser Funktion definiert. Wenn wir es also nicht im lokalen Bereich finden können, wird es dann den Wert davon aus dem globalen Bereich sehen. Wenn wir das ausführen, können Sie sehen, dass trotz der Tatsache, dass es nicht im lokalen Bereich definiert ist, aus dem globalen Bereich aus Zeile 3 zugänglich ist, da es nicht innerhalb dieser Funktion definiert ist. Das ist etwas, was Sie brauchen, um ein bisschen Zeit damit zu verbringen, den Kopf herum zu bekommen. Aber sobald Sie es verstehen, wird es Ihnen helfen, zu verstehen, was im Allgemeinen vor sich geht. Aber es ist einfach, sich in Knoten zu erklären, hauptsächlich wenn Sie innerhalb einer Funktion dieselben Variablennamen verwenden wie außerhalb einer Funktion. Das lokale a unterscheidet sich also von der globalen ei, weshalb verwirrend werden kann. Und es ist eine gute Idee, Ihre lokalen Variablen nicht mit dem gleichen Namen wie eine globale Variable zu benennen. 98. PROJEKT Spiel (Version 2) – TEIL 1: In Ordnung, lassen Sie uns darüber reden, wie Sie Ihr Ratespiel-Projekt verbessern können. Wir haben über Funktionen gelernt, so dass wir bereit sind, sie in diesem Projekt anzuwenden, können Sie dieses Wissen nehmen und Ihr Projekt und Ratespiel konvertieren , so dass es Funktionen verwendet. Der erste Schritt besteht darin, ein Modul hinzuzufügen, das nicht am Anfang der Datei verkleinert , um zu erklären, was das Programm tut, wir können dreifache, doppelte Anführungszeichen am Anfang und Ende des docstring verwenden. Jetzt sind wir bereit, es zu aktualisieren und eine Funktion zu nutzen. Lassen Sie uns die Funktion benennen, wie es erraten wird. Wir werden eine Funktion Stub für do erraten Runde erstellen. Nun, was ist die Stubfunktion? Wenn Sie wissen, dass Sie eine Funktion benötigen, aber über die Details nicht sicher sind. Sie können das Pass-Schlüsselwort verwenden und den Codeblock später ausfüllen lassen. Eine leere Funktion wie diese, ein Stub können Sie die Funktion definieren. Es wird fehlschlagen, wenn es keinen Code-Blog gibt, aber wir werden die Details später erarbeiten. Es ist vor allem ein Platzhalter, um Ihnen zu helfen, Ihre Gedanken zu organisieren. Wenn Sie den Docstring einschließen, benötigen Sie keine Pfadanweisung. Es wurde wahrscheinlich überprüft, fügen Sie den Docstring ein, ziehen Sie den Code ein, um ihn Teil des Funktionscodeblocks zu machen. Jetzt können Sie eine Zeile am Ende des Programms hinzufügen, um die Gußrunde Funktion auszuführen. Lassen Sie uns das Programm starten. Offensichtlich gibt es ein Problem. Das Spiel wird nicht neu gestartet. Kannst du herausfinden, warum? Richtig? Wir müssen eine Zeile hinzufügen, die die do guess round Funktion innerhalb der Schleife aufruft. Versuchen wir es nochmal. Jetzt wird das Programm neu gestartet. Schau dir an, dass jedes Mal, wenn das Spiel neu gestartet wird, die Antworten des Computers genau gleich sind. Und so sollte das Spiel nicht laufen. Der Computer sollte für jede Runde eine andere Nummer wählen. Lassen Sie uns den Code mit Kontrolle plus c stoppen, weil die Zahl jedes Mal gleich ist. Es ist wahrscheinlich ein Problem mit der Art und Weise, wie es gespeichert oder ausgewählt wird. Denken Sie darüber nach, wie der Pfad von Python ihm folgt, wenn er durch diesen Code fließt und wo die Zahlenwahl in Bezug auf diesen Fluss stattfindet. Ich habe versucht, herauszufinden, warum. Lassen Sie uns nun dieses Logikproblem lösen. Das Programm erraten immer die gleiche Zahl wegen eines Problems mit dem zufälligen Rand INT-Funktionsstandort. Das Programm durchläuft diese Schritte, wenn Sie das Programm ausführen, einer führt den Import aus, zwei wählt eine Zufallszahl, drei weist einen Wert zu einer Eingabeaufforderung für definiert eine Funktion, führt sie aber noch nicht aus. Fünf beginnt eine Schleife. Sechs ruft die Funktion wiederholt von innerhalb der Schleife auf, ohne eine Zufallszahl zu wählen. Wenn es die Funktion aufruft, wird die Zufallszahl nicht wieder gewählt, die gleichen Zahlen werden jedes Mal ausgewählt. Sie können es beheben, indem Sie den Code eingeben die Nummer innerhalb der Funktion auswählen. Sie können die Runde generieren, indem Sie Druckanweisungen hinzufügen , um zu klären, wann eine neue Runde begonnen hat. Sie tun dies, indem Sie den Code der Druckanweisungen in eine while-Schleife setzen. Löschen Sie außerdem die Dugas-Rundfunktion aus der Schleife. Das Hinzufügen einer neuen Zeile, die Auswahl einer Zufallszahl innerhalb der Funktion löst ein Logikproblem. Wenn das alles ist, was Sie tun werden, löschen Sie den ersten Verweis auf Computer Unterstrich Nummer. Du löschst es nicht, weil ich will, dass du zwei Dinge bemerkst. Erstens scheint das Programm zu funktionieren, als ob es zwei Variablen namens Computernummer gibt. Zweitens, obwohl die neuen Werte weiterhin einer Variablen namens Computernummer innerhalb der Funktion zugewiesen werden. Diese Zuweisungen ändern den Wert außerhalb der Funktion nicht. Führen Sie das Programm aus. Jetzt, um es zu sehen. Es funktioniert gut. Stoppen Sie den Code mit Steuerelement plus C. Hier ist ein ausgezeichnetes Beispiel für einen variablen Bereich, den wir in einer vorherigen Lektion im früheren Code besprochen haben . Und der Name Computer-Nummer wird mehr als einmal verwendet. Es gibt eine innerhalb der Funktion, die Runde erraten und eine in main definiert. Aber nie werden sich die beiden treffen. Es ist, als wären sie in verschiedenen Dimensionen. Was mit einer in einer Dimension passiert, passiert nicht mit der anderen. In der Tat wird jedes Mal, wenn die Funktion erraten Runde aufgerufen. Die Variable ist eine andere Variable, aber sie hat den gleichen Namen. Das Programm erinnert sich nicht an den Wert, den es letzten Stand hatte, wurde die Funktion Variablen genannt, die innerhalb einer Funktion definieren lokale Variablen genannt werden. Das bedeutet, dass Sie sich bei der Auswahl des Namens einer Variablen innerhalb Ihrer Funktion nicht an die Namen aller anderen Variablen erinnern müssen, die Sie jemals verwendet haben. Teil 1 des Ratespiels ist beendet. Studieren Sie noch einmal, was Sie bisher getan haben, und wenn Sie bereit sind, gehen wir zu Teil zwei. Danke fürs Zuschauen. 99. PROJEKT Spiel (Version 2) - TEIL 2: Jetzt ist es an der Zeit, Ihr Spiel ein wenig durch Hinzufügen einer Punktzahl und eine einfachere Möglichkeit zu beenden, Sie können nicht erwarten, dass Ihr Benutzer über Kontrolle plus C wissen, das Programm wird geändert. Diese Art von verfolgt also die Anzahl der Runden, die der Benutzer gespielt hat, und die Gesamtzahl der Vermutungen, aus denen die durchschnittliche Anzahl der Vermutungen berechnet werden kann. Für Tracking-Runden besteht der erste Schritt darin, dem Hauptprogramm eine Variable namens Gesamtrunden hinzuzufügen . Dann müssen Sie Erhöhung um eine Gesamtrunde in den Hauptteilen währen-Schleife erhöhen. Für die Verfolgung von Vermutungen besteht der erste Schritt darin, eine Variable hinzuzufügen, die Gesamtzahl der Vermutungen genannt wird. In der Dugas Runde Funktion. Das Programm verfolgt, wie viele Vermutungen während der Funktion gemacht wurden. Name Teil des Programms kann nicht zu den Variablen innerhalb der Funktion gelangen. Sie sind für diese Funktion lokal. Wir werden diese variable Anzahl von Vermutungen nennen , um den Wert zurück zum Hauptteil des Programms zu erhalten. Sie werden durch das return-Schlüsselwort zurückgegeben und in einer Variablen namens diese Runde gespeichert. Eine laufende Summe von Vermutungen wird begrenzt, indem dieser Wert zu den variablen Gesamtunterstrichraten addiert wird. Dies wird dann verwendet, um die durchschnittliche Anzahl der Vermutungen pro Runde zu berechnen , die die Gesamtzahl der Vermutungen geteilt durch die Gesamtzahl der Runden ist. Der Flow Build-in wird zum vierten Python verwendet, um Dezimal- und nicht ganzzahlige Arithmetik zu verwenden. Einige der print-Anweisungen in der while-True-Schleife wurden geändert und einige wurden hinzugefügt, um dem Benutzer einige weitere Informationen über die Runde zu geben. Führen Sie das Programm aus, um zu sehen, dass es funktioniert. Cool. Beenden Sie nun das Programm und kehren Sie zum Editor zurück. Das ist das Ende von Teil zwei. Bitte üben Sie, was Sie gelernt haben, und fahren Sie dann dem letzten Teil unseres Python Ratespiels fort. 100. PROJEKT Improved Spiel 3 (Version 2) – TEIL 3: Willkommen zurück alle. Im letzten Teil des Projekts werden wir uns eine Lösung vorstellen, wenn ein Benutzer das Programm beenden kann, indem er den Buchstaben Q eingibt. Benutzer möchten normalerweise nicht etwas beenden, indem sie versehentlich etwas eingeben. Anstatt sofort zu beenden, fordert eine Routine den Benutzer auf, das Beenden zu bestätigen. Die Standardantwort lautet „Ja“. Zuerst erstellen wir die Funktion, um das Beenden zu bestätigen. Lassen Sie uns sehen, die Schritte eins nach 11 erstellen Sie eine Konstante bestätigen ausgestattete Nachricht als Aufforderung zu verwenden, um die Beenden zu bestätigen, um eine Funktion namens bestätigen beenden und dann bestätigen Beenden Funktion, bitten Sie den Benutzer zu bestätigen, indem Sie eingeben, warum Eingabe verwenden, die Spieler fragen nach Eingabe und die Antwort wird in einer Variablen namens confirm gespeichert. Bestätigen Sie mit dem eingegebenen Benutzer ist n, dann gibt die Bestätigungsfunktion false zurück. Das bedeutet, dass das Programm den Krieg abbrechen sollte. Bestätigen Sie alles andere, einschließlich der Benutzer, die die Eingabetaste drücken , ohne eine andere Taste oder sogar eine Großbuchstabe N zu drücken, dann wird die Funktion true zurückgeben und bestätigt, dass der Benutzer beenden möchte. Die Funktion bestätigt standardmäßig das Beenden, anstatt es abzubrechen. Dies setzt voraus, dass der Benutzer das Spiel in den meisten Fällen wirklich beenden möchte. Jetzt werden wir weiterhin einen konstanten Unterstrich-Text definieren, um den Buchstaben Q zu halten, was der Benutzer drücken sollte, wenn er beenden möchte. Sie können sie eine Vermutungsrunde Rückgabenummer machen , die nie eine gültige Anzahl von Vermutungen sein wird. Etwas wie minus1 ist ideal, da die Anzahl der Vermutungen niemals negativ sein kann. Sie könnten auch eine Zahl wie 100 Tausend unter der Annahme wählen , dass niemand jemals so viele Vermutungen machen wird. Meine Präferenz ist minus1. Definieren Sie dann eine Konstante beenden Programm, die Sie tun raten Runde Funktion wird zurückgegeben, wenn der Benutzer beendet wird, zugewiesen den Wert von minus eins zu beenden. Azure neue Konstanten nach dem Import zufällig in der do guess round Funktion bei einer Überprüfung zu sehen, ob der Benutzer q statt einer Zahl eingegeben hat. Wenn sie die Bestätigungsfunktion aufgerufen haben, um zu bestätigen. Wenn der Aufruf zur Bestätigung quit den Wert true zurückgibt, dann beenden Sie. Machen Sie den Codeblock Rückgabe Programm beenden. Dies verlässt die Funktion und gibt den Wert von minus eins zurück. Wenn nicht, machen Sie den Codeblock weiter machen Sie ihn zur einzigen Zeile im Codeblock. Das Schlüsselwort continue macht einen Neustart der Schleife am oberen Rand des Codeblocks der Schleife, abhängig von der Art der Schleife, dies kann auch bedeuten, dass der Schleifenzähler inkrementiert wird. Ihr neuer Code sollte nach der Eingabezeile gehen. Jedes Mal, wenn ein Spieler erraten, wird die Vermutung verglichen, um zu sehen, ob es die gleiche ist wie es Unterstrich Text beenden. Das ist q. Wenn ja, dann wird der Spieler aufgefordert, durch Aufruf der Bestätigungsfunktion zu bestätigen. Wenn es bestätigt wird, dann erraten Sie runden Ausgang geben den Wert von minus eins zurück , der im Konsonanten der Quit Message gespeichert ist. Es ist nicht der Benutzer, der Q versehentlich eingegeben hat, fährt fort, überspringt den Rest der aktuellen Iteration der Schleife und startet eine neue Iteration neu. Da der Spieler in einer Zahl vermutet, ist es Q, Sie würden einen Fehler bekommen. Aus diesem Grund muss der Rest der Schleife übersprungen werden. Das letzte, was zu tun ist, ist zurück in main, überprüfen Sie, ob das Wert beenden Programm in dieser Runde an die Variable zurückgekehrt ist. Wenn dieser Grund ist, generieren Sie eine Stance-Nachricht zu drucken, weil der Code diese Runde inkrementiert, weil er erwartet, dass der Spieler richtig erraten wird. Es muss dekrementiert werden, wenn der Programmcode beendet wird. Bevor Sie die Spieler-Haltung berechnen, berechnen Sie die durchschnittliche Anzahl der Vermutungen pro Runde. Die Gesamtraten dividiert durch die Gesamtzahl der Runden. Um aus der while-Schleife auszubrechen. Sie am Ende des Programms DruckenSie am Ende des Programmsdie Statusmeldung für hinzufügen einige Druckanweisungen am Ende, um die Statistik auszudrucken. Insgesamt im Hauptteil des Programms. Jedes Mal, wenn Python die Dugas round Funktion zurückgibt, sieht es, ob equip Programmwert zurückgegeben wurde. Wenn dies der Fall ist, bereitet das Programm einige Nachrichten vor, die am Ausgang gedruckt werden und druckt aus der Haupt-while-Schleife aus. Nachdem die Nachrichten gedruckt wurden, wird das Ende der Datei in der Programmende erreicht. Ich werfe jetzt einen kurzen Blick auf das Programm werfen. Es ist also Zeit, das endgültige Programm auszuführen. Lass uns drei Runden spielen. Ich habe die Gesamtrunde vergessen. Lasst uns anklicken. Lauf noch mal. Und es funktioniert großartig. Jetzt möchte ich Ihnen zwei Herausforderungen stellen, und ich möchte, dass Sie versuchen, die Antworten zu finden. Aber zuerst müssen Sie sich die Lektionen ansehen und den Abschnitt studieren, der sich mit Fehlern befasst. Lassen Sie uns das Programm erneut ausführen und ohne Vermutungen drücken Sie die q, um zu beenden, bestätigen Sie mit ja. Und sieh dir die Runden an. Die Gesamtrunden sind 0. Sie können natürlich nicht mit 0 teilen. Die zweite Herausforderung ist die folgende. Führen Sie das Programm erneut und statt einer Zahl, drücken Sie einen Buchstaben ist eine Ratenzahl auf einer Eingabe, wir haben einen Wertefehler, weil das Programm akzeptiert nur ganze Zahlen. Sie werden beide Lösungen für die Herausforderungen finden, wenn Sie die Lektionen der Sektion Umgang mit Fehlern wollen . Wow, du hast viel getan. Bitte machen Sie Ihre Hausaufgaben, versuchen Sie, das Projekt selbst zu lösen. Dann erlernen Sie Fähigkeiten und lernen neue Bereiche von Python, die Sie vorher nicht kannten. Und es kann Ihnen viel Selbstvertrauen geben und in der Lage sein schwierigere Probleme weiter unten anzugehen. Wenn Sie Fragen haben, ich Ihnen gerne weiter. Danke fürs Zuschauen. 101. Umgang mit Fehlern: Der meiste Anwendungscode beliebiger Komplexität hat Fehler darin. Menschen schreiben Anwendungen in Menschen machen Fehler. können jedoch Fehler auftreten, die Ihnen keine Benachrichtigung geben. In diesem Abschnitt erfahren Sie über verschiedene Arten von Fehlern und was Sie tun müssen, wenn Ihre Anwendung sie trifft. Die meisten Entwickler nennen Anwendungsfehlerausnahmen, was bedeutet, dass sie die Ausnahme von der Regel sind. Da Ausnahmen duale aktuelle Anwendungen, müssen Sie erkennen und etwas gegen sie tun, wann immer möglich. Der Akt des Sehens und der Verarbeitung und der Ausnahme wird als Fehlerbehandlung oder Ausnahmebehandlung bezeichnet. Um Fehler richtig zu erkennen, müssen Sie über Fehlerquellen in y Fehler in erster Linie wissen. Wenn Sie den Fehler bemerken, müssen Sie ihn verarbeiten, indem Sie die Ausnahme abfangen. Eine Ausnahme zu sehen bedeutet, sie zu untersuchen und möglicherweise etwas dagegen zu tun. Manchmal ruft man es auf, erkennt einen Fehler in der Anwendung. Wenn dies geschieht, müssen Sie eine Ausnahme auslösen oder auslösen. Sie sehen, dass beide Begriffe für dasselbe verwendet wurden, was einfach bedeutet, dass Ihr Code auf einen Fehler gestoßen ist, den er nicht verarbeiten konnte. Also übergeben Sie die Fehlerinformationen auf ihn in ein anderes Stück Code zu verwalten. In einigen Fällen können Sie benutzerdefinierte Fehlermeldungsobjekte verwenden, um die Informationen weiterzugeben. Obwohl Python eine Fülle von generischen Nachrichten auf Objekten hat, die die meisten Situationen abdecken, einige Situationen oder spezielle. Sie müssen wissen, wie Sie Ausnahmen lokal behandeln. Senden Sie sie an den Code, der Ihren Code aufgerufen hat. Wann erstellen Sie eine spezielle Ausnahme, so dass jeder Teil der Anwendung weiß, wie die Befreiung zu behandeln. Python stellt die letzte Klausel bereit, die immer ausgeführt wird, auch wenn eine Ausnahme auftritt. Sie können Code platzieren, um Dateien zu schließen oder andere zentrale Aufgaben in dem Codeblock auszuführen , der dieser Klausel zugeordnet ist. Wenn ein Fehler auftritt, sagen die Leute häufig, dass eine Anwendung einen Fehler darin hat. Fehler sind einfach Codierungsfehler, die Sie mit einem Debugger entfernen können. Ein Debugger ist eine spezielle Art von Tool, mit dem Sie die Anwendungsausführung stoppen oder anhalten, den Inhalt von Variablen und in der Regel die Anwendung untersuchen können, um zu sehen, was es ankreuzt. Fehler fallen in klar definierte Kategorien, die Ihnen helfen, bis zu gewissen Grad vorherzusagen, wann das Ende, wo sie auftreten werden. Die beiden Haupttypen sind Pfeile, die zu einem bestimmten Zeitpunkt auftreten , und Fehler, die ein bestimmter Typ sind. Pfeile werden zu einem bestimmten Zeitpunkt vorkommen. Die beiden wichtigsten Zeitrahmen sind Kompilierzeit und Laufzeit. Ein Kompilierungsfehler tritt auf, wenn Sie Python auffordern, die Anwendung auszuführen. Bevor Python die Anwendung ausführen kann, muss sie den Code in interpretieren in ein Formular einfügen, das der Computer verstehen kann. Wenn die Anweisungen, die Sie schreiben, fehlen benötigte Informationen. Python kann die erforderliche Konvertierung nicht durchführen. Glücklicherweise sind Kompilierungszeitfehler am einfachsten zu erkennen und zu beheben. Laufzeit. Ein Laufzeitfehler tritt auf, nachdem der Python den Code kompiliert hat, den Sie schreiben und ein Computer mit der Ausführung beginnt. Laufzeitfehler kommen in verschiedenen Typen und einige sind schwieriger zu finden als andere. Sie wissen, dass Sie einen Laufzeitfehler haben, wenn die Anwendung plötzlich nicht mehr läuft und einen Ausnahmedialog anzeigt. Das Verständnis der Fehlertypen hilft Ihnen, Fehler schneller, früher und konsistenter zu finden , was zu weniger Fehldiagnosen führt. Der Trick besteht darin, zu wissen, wo man mit diesem Blick schauen soll, Python in den meisten anderen Programmiersprachen bricht Fehler in die folgenden Typen auf. Syntaktisch, semantisch und logisch. Syntaktische Fehler, in der Regel die einfachste, ein logischer Fehler ist in der Regel der schwierigste. In den folgenden Vorträgen werden wir jede dieser Fehlertypen im Detail untersuchen. Danke fürs Zuschauen. 102. Häufige Syntax: Wenn Sie zum ersten Mal auf einen Syntaxfehler stoßen, ist es hilfreich zu wissen, warum ein Problem aufgetreten ist und was Sie tun können, um das Ungleichgewicht in Ihrem Python Code intakt zu beheben. In dieser Lektion sehen Sie einige der häufigsten Gründe, warum Syntaxfehler auftreten können. Ob dies auf einen Tippfehler oder ein Missverständnis der Python -Syntax zurückzuführen ist. Und vor allem, wie Sie sie reparieren und vermeiden können, ganz in der Zukunft. Es gibt mehrere Fälle in Python, in denen Sie keine Zuweisungen zu Objekten vornehmen können. Einige Beispiele sind die Zuweisung von zwei Literalen und Funktionsaufrufen im folgenden Code, Sie werden ein paar Beispiele sehen, die versuchen, dies zu tun und die resultierenden Syntaxfehler-Trackbacks. Also hier werden wir versuchen und fünf auf die Länge von hallo zuweisen. Nun, wie Sie sehen können, hat das einen Syntaxfehler erzeugt, der besagt, dass es einer Funktionsgall nicht zuweisen kann. Hier ist ein weiteres Beispiel. Literal kann nicht zugewiesen werden. Das Beispiel hier beide versuchen, dasselbe zu tun, indem sie Literalen einer Zeichenfolge oder einer Ganzzahl zuweisen. Die gleiche Regel gilt für andere Literalwerte. Auch hier zeigen die Traceback-Meldungen an, dass das Problem auftritt, wenn Sie versuchen, einem Literal einen Wert zuzuweisen. Eine Sache, die hier zu beachten ist, ist, dass die Beispiele in der Shell die wiederholte Codezeile und die Karotte fehlen , die auf das Problem und die Spur zurück zeigt. Die Ausnahmen und Trackbacks, die Sie in der flachen oder anders sehen , als wenn Sie den Code aus einer Datei ausführen. Wenn dies der Code war, sind Sie in einer Datei, Sie erhalten die wiederholte Codezeile und kümmern sich darum, auf das Problem zu zeigen, wie Sie zuvor gesehen haben. Diese Art von Missbrauch des Zuweisungsoperators ist also die Art von Sache. Sicherlich kann ich sagen, dass ich mehr tue, als ich nicht zugeben sollte. Es wurde oft getan, weil ich das zusätzliche Gleichheitszeichen vergessen habe, wenn ich versuche, einen Vergleich durchzuführen. Wenn man also dieses erste Beispiel korrigiert, tut das, was ich eigentlich wollte, was zu überprüfen war, dass die Länge von hallo gleich fünf ist. Und Sie können sehen, dass es den Wert true zurückgibt. Die meisten Downwind Python sagt Ihnen, dass Sie eine Zuweisung zu etwas machen , dem nicht zugewiesen werden kann. Dies ist die Sache, zuerst zu überprüfen, dass Sie tatsächlich einen Vergleich machen sollten. Python-Schlüsselwörter oder eine Reihe von geschützten Wörtern, die in Python eine besondere Bedeutung haben. Dies sind die Wörter, die nicht als Bezeichner, Variablen oder Funktionsnamen in Ihrem Code verwendet werden können. Sie sind Teil der Sprache und kann nur im Kontext von Python verwendet werden ermöglicht, Es gibt drei gängige Möglichkeiten, die Sie versehentlich verwendet Schlüsselwörter, falsch Rechtschreibung eines Schlüsselworts, fehlt ein Schlüsselwort, oder missbraucht ein Schlüsselwort. Wenn Sie ein Schlüsselwort in Ihrem Python Code falsch schreiben, erhalten Sie wahrscheinlich einen Syntaxfehler. Hier ist beispielsweise, was passiert, wenn Sie das Schlüsselwort falsch verschütten. Die Nachricht liest Syntaxfehler, ungültige Syntax, aber das ist nicht sehr hilfreich. Das Traceback verweist auf den ersten Platz, an dem Python erkennen konnte, dass etwas falsch war. Um diese Art von Fehler zu beheben, stellen Sie sicher, dass alle Ihre Python Schlüsselwörter korrekt geschrieben sind. Ein weiteres häufiges Problem mit Schlüsselwörtern ist, wenn Sie sie alle zusammen vermissen. Wieder einmal ist die Ausnahmemeldung nicht so hilfreich, aber das Traceback versucht, Sie in die richtige Richtung zu zeigen. Wenn Sie von der Karotte zurückgehen, können Sie sehen, dass im Schlüsselwort in der for-Schleife Syntax fehlt. Sie können auch ein geschütztes Python Schlüsselwort missbrauchen. Denken Sie daran, dass die Schlüsselwörter nur in bestimmten Situationen verwendet werden dürfen. Wenn Sie sie falsch verwenden, haben Sie eine ungültige Syntax in Ihrem Python Code. Ein gängiges Beispiel dafür ist die Verwendung von continue oder break außerhalb einer Schleife. Dies könnte während der Entwicklung leicht passieren, wenn Sie Dinge implementieren und die Logik außerhalb einer Schleife verschieben. Hier macht Python einen guten Job, Ihnen genau zu sagen, was in diesem Beispiel falsch ist Der Methodenbruch außerhalb der Schleife hilft Ihnen, genau herauszufinden, was zu tun ist. Wenn dieser Code in einer Datei in Python wäre, würde die Karotte es auch direkt auf das missbenutzte Schlüsselwort zeigen. Der Missbrauch von continue folgt einem einfachen Muster Generieren eines Syntaxfehlers mit einer anderen Nachricht. Ein weiteres Beispiel ist, wenn Sie versuchen, einer Variablen ein Python Schlüsselwort zuzuweisen oder ein Schlüsselwort zum Definieren einer Funktion zu verwenden. Wenn Sie versuchen, einem Durchlauf einen Wert zuzuweisen, oder wenn Sie versuchen, eine neue Funktion namens pass zu definieren, erhalten Sie einen Syntaxfehler und sehen die ungültige Syntaxmeldung. Wieder. Es könnte ein wenig schwieriger sein, diese Art von ungültiger Syntax in Python Code zu lösen, da der Code von außen gut aussieht, wenn Sie aufrufen, sieht er gut aus, aber Sie erhalten immer noch einen Syntaxfehler, dann könnten Sie die Variablennamen oder den Funktionsnamen, den Sie die Schlüsselwortliste für die von Ihnen verwendete Version von Python verwenden möchten, wird die Liste der geschützten Schlüsselwörter mit jeder neuen Version von Python geändert. In Python 3.6 könnten Sie beispielsweise eine Gewichtung als Variablenname oder Funktionsname verwenden. Aber als Python 3.7 wurde dieses Wort zur Keyword-Liste hinzugefügt. Wenn Sie nun eine Gewichtung als Variablen- oder Funktionsname verwenden würden, wird dies zu einem Syntaxfehler führen, wenn Ihr Code auf Python 3.7 oder höher ausgeführt wird. Ein weiteres Beispiel ist dieser Druck, der sich von Python zwei gegenüber Python drei unterscheidet. Print ist ein Schlüsselwort in Python 2x, so dass Sie in Python drei keinen Wert zuweisen können Es ist jedoch eine integrierte Funktion, der Werte zugewiesen werden können. Sie können den folgenden Code ausführen, um die Liste der Schlüsselwörter in jeder Version von Python anzuzeigen , die Sie ausführen. Ein Schlüsselwort stellt auch die nützliche ist Schlüsselwort-Funktion zur Verfügung. Wenn Sie eine schnelle Möglichkeit benötigen, um die Pfadvariable zu überprüfen, können Sie den folgenden Code verwenden. Dieser Code zeigt Ihnen schnell an, ob die Kennung, die Sie verwenden, ein Schlüsselwort ist oder nicht. Oft ist die Verwendung einer ungültigen Syntax in Python Code eine falsch gelesene oder nicht übereinstimmende Kleidung, Klammer, Klammer oder Zitat. Diese können sehr lange Zeilen verschachtelter Klammern oder längerer mehrzeiliger Blöcke schwer zu erkennen sein. Sie können Diskrepanz oder verpasstes Zitat mit Hilfe von Pythons Tracebacks erkennen. Hier sind die Traceback-Punkte auf den ungültigen Code, wo es ein T und ein einzelnes Anführungszeichen nach unserem vorherigen schließenden einfachen Anführungszeichen gibt. Um dies zu beheben, können Sie eine der Änderungen vornehmen. Erstens können Sie das einfache Anführungszeichen mit einem umgekehrten Schrägstrich in dem Beispiel hier sehen. Wir können bereits sehen, dass die Shell diesen Code entsprechend hervorhebt. Es sieht so aus, als ob es OK wird. Python ist auch damit zufrieden. Die zweite Option besteht darin, die gesamte Zeichenfolge stattdessen in doppelte Anführungszeichen zu umgeben, wie im folgenden Beispiel zu sehen, lassen Sie uns das in Aktion sehen. einmal können Sie sehen, dass die Shell dies entsprechend für eine Zeichenfolge hervorhebt. Es scheint also glücklich zu sein mit dem, was wir getan haben. Genau wie Python. Ein weiterer häufiger Fehler besteht darin, zu vergessen, eine Zeichenfolge mit beiden doppelten Anführungszeichen in einfachen Anführungszeichen zu schließen . Die Situation und Tracebacks werden die gleichen sein. Diesmal zeigt die Karotte in der Spur zurück direkt auf den Problemcode. Diese Syntaxfehlermeldung EOL beim Scannen des Zeichenfolgenliteral ist ein wenig spezifischer und hilfreich bei der Ermittlung des Problems. Dies bedeutet, dass der Python Interpreter am Ende der Zeile, dem EOL, gelangt ist, bevor eine offene Zeichenfolge geschlossen wurde. Um dies zu beheben, schließen Sie die Zeichenfolge mit einem Anführungszeichen, das mit dem übereinstimmt, das Sie zum Starten verwenden. In diesen Fällen wäre der erste mit einem doppelten Anführungszeichen, der zweite mit einem einfachen Anführungszeichen. Zitat, das in Anweisungen in einer F-Zeichenfolge fehlt kann auch zu einer ungültigen Syntax in Python führen. Hier fehlt der Verweis auf das Alters-Wörterbuch innerhalb des gedruckten F String das schließende einfache Anführungszeichen aus der Schlüsselreferenz. 103. Sprünge zu werfen Hunter werden: Fehler sind ein integraler Bestandteil der Programmierung. Sobald Sie über das einfachste Programm hinausgegangen sind, das Sie erstellen, werden Sie zweifellos begegnen. Es kann ein frustrierender Teil der Lernerfahrung sein, aber Sie werden oft feststellen, dass das lohnendste Erlebnis ist, das Lektionen beibringt , die Sie brauchen, um die Prahlerei kennen zu lernen. Denken Sie daran, niemand erstellt Code ohne Fehler. Der Schlüssel zum Auffinden von Fehlern. Methodisch. Es nützt nichts, nur zufällig zu versuchen, Dinge zu ändern. Es ist besser zu versuchen, in den Kopf zu bekommen, was der Computer zu tun versucht und zu sehen, ob er wirklich tut, was Sie denken, er tut. Viele waren zu der Zeit, wenn es aussieht, als würde es tun, was ich denke, es ist, aber eigentlich habe ich mir die Details davon angesehen und vielleicht Glück gehabt. Und eigentlich ist es viel weniger als das, was ich ursprünglich geplant hatte. Wir werden uns zwei Möglichkeiten ansehen, die Probleme zu lösen. Erstens, die alte Schule Art und Weise bevorzugt von Guido van Rossum , der Druckaussagen verwendet. Also, jetzt, da du das in Aktion sehen wirst. Und Sie können auch den Bug entdecken, der darin vorhanden ist. Aber die Idee ist wirklich, ein Programm zu erstellen, das einfach zu verstehen ist , anstatt einen hysterischen schwer zu findenden Fehler zu erstellen. Keine Sorge, du wirst später viele davon haben, um dich zu kümmern. Sie werden also ein einfaches Zahlenratespiel sehen. Der Computer wird an eine Zahl zwischen 110 denken, dann muss der Benutzer es erraten, und dann wird der Computer dem Benutzer sagen, ob er es richtig gemacht hat oder nicht. Also hier kommt der Code. Ich werde die Zufallsbibliothek importieren, damit wir eine Zufallszahl generieren können. Drucken Sie eine Nachricht für den Benutzer, erstellen Sie die Zufallszahl. Und jetzt lassen wir den Benutzer seine Gäste eingeben und diese der Gastvariablen zuweisen. Jetzt werden wir überprüfen, ihre Vermutung ist die gleiche wie die Zahl. Und wenn es so ist, werden wir ihnen sagen, dass sie Recht haben. Und wenn dies nicht der Fall ist, werden wir ihnen sagen, dass sie sich geirrt haben. Da gehen wir. Das Programm ist abgeschlossen und jetzt werden Sie es in Aktion sehen. Also werde ich es einfach am Laufen halten, bis der Bug sich uns bekannt macht. Und dort nach dem ersten Mal, manchmal viel öfter, als Sie erwartet hatten. Aber das ist die Natur der Zufälligkeit. Wir sehen unseren Bug, der sagt, Entschuldigung, die Zahl war fünf, nicht fünf. Bis zu diesem Punkt haben Sie vielleicht gedacht, dass Ihr Programm gut funktioniert. Du hättest es jemandem zeigen können und glücklich darüber sein können. Und dann wird jemand sagen, „Hang on a minute“. Es hieß, die Zahl war fünf, nicht fünf. Was ist das Problem da? Was wir also tun müssen, ist eine Druckaussage zu verwenden , um uns zu helfen, herauszufinden, was das Problem ist. Ich werde hier einen einfügen. Und jetzt müssen wir das Programm erneut ausführen. In diesem Fall wird uns das, was wir gerade ausgedruckt haben, nicht zu sehr helfen , weil es nicht die Darstellung ist, das ist das Problem. Es ist die eigentliche Information. Schauen wir uns ein wenig tiefer an. Hier. Wir werden uns das etwas tiefer ansehen und ansehen, was die Art der Zahl ist und erraten. Und da sehen wir das Problem. Das Problem ist, dass unsere Nummer nicht leugnen und t ist, weil sie zufällig von einem Punkt Rand INT erstellt wurde. Aber unsere Vermutung ist ein SDR oder eine Zeichenfolge. Und wenn wir STRS oder Ion Ts ausdrucken, sehen sie identisch mit uns auf dem Bildschirm aus. Sie haben vielleicht bemerkt, dass dies nicht der Fall wäre, wenn Sie diese Art von Arbeit in der Python -Shell machen. Daher ist es wichtig zu erkennen, dass Druck Ihnen möglicherweise nicht immer alle Informationen zeigt , die Sie benötigen, um subtile Fehler wie diese zu finden. Aber es kann eine wirklich nützliche und schnelle Methode sein, um herauszufinden, was vor sich geht, wenn ein Programm läuft. Also in diesem Fall, um diesen speziellen Fehler zu beheben, muss die Eingabe jetzt in einen INT umgewandelt werden. Nun würde dies fallen, wenn der Benutzer etwas eingibt, das in einen INT umgewandelt werden könnte. Aber in diesem Fall lassen wir es einfach so, wie es ist schön und klar zu sein. Also jetzt führen wir das Programm wieder aus und wir können sehen, dass sie beide INT sind. Und wenn ich es genug mal durchführe, um die Vermutung richtig zu machen. Schließlich kommen wir zu einem Punkt, wo die Vermutung fünf war und die Zahl fünf war. Und wir können sehen, dass das Programm wie beabsichtigt funktioniert. Nachdem Druckaktion als nächstes PDB gesehen, der Python-Debugger. So auf dem Bildschirm können Sie das Buggy-Zahlen-Rating-Programm aus der vorherigen Sitzung sehen. Und wir werden jetzt PDB importieren, damit wir es verwenden können, um dieses Programm zu debuggen. Also habe ich PDB am Anfang importiert und an dem Punkt wo ich möchte, dass PDB die Ausführung des Programms übernimmt, habe ich die folgende Zeile eingefügt. Ich werde auch die Codezeilen löschen, die ich angehängt habe. Wie Sie sehen können, wird das Programm normal ausgeführt, bis es zu diesem Punkt kommt. Und dann werden wir in der Lage sein, Schritt für Schritt Ausführung zu übernehmen. Und es wird uns erlauben, innerhalb des Programms zu schauen, da es immer noch im Speicher läuft. Also bekommen wir, um die Nummer normal eingeben, aber wie Sie sehen können, sieht es ganz anders aus. Die PDB-Leitung links zeigt uns, dass die PDB die Ausführung des Programms übernommen hat. Jetzt ist es wirklich einfach zu vergessen, wo Sie im Programm sind. Eine der wichtigsten Anweisungen ist also, i für die Liste zu verwenden. Wir können sehen, dass es uns einen Abschnitt des Programms zeigt , in diesem Fall, der besagt, dass wir in Zeile sieben sind. Und die nächste Anweisung wird sein zu erraten, ob gleich Zahl ist. Aber was wir jetzt tun können, ist, zu schauen, was sich im Speicher des Computers befindet. Und es ist ähnlich wie eine normale Python -Shell. Wenn ich tippe, können wir den Wert einer Zahl sehen. Wenn ich tippe, können wir den Wert einer Vermutung sehen. Und sofort funktioniert das etwas besser als Drucken, weil es uns anzeigt, dass dies kein INT ist, sondern eine Zeichenfolge ist. Mit diesem einen Befehl haben wir bereits gefunden, was das Problem ist. Während wir mit Print tiefer eintauchen und diese Art von Variablen manuell ausdrucken mussten . Aber lassen Sie uns dieses Programm weitermachen. Und wir können mit C für weiter tun. Wie Sie sehen können, läuft es bis zum Ende. Es zeigt, dass es normal funktioniert. Und weil dies ein kleines einfaches Programm ist , müssen wir das tun. Wenn wir nun Spuren an einem anderen Ort setzen, könnten wir betrügen. Werfen wir einen kurzen Blick darauf. Also, jetzt habe ich es vor und ich muss meine Vermutung setzen, damit ich betrügen kann. Ich kann in den Kopf des Computers schauen, sehen, was er ausgewählt wurde, und dann die Nummer eingeben, die wir manchmal nützlich sein werden, damit Sie das Programm nicht zehn, 15-20 mal, et cetera ausführen müssen . Mal sehen, was die Nummer ist. Also, jetzt kann ich weitermachen. Es fragt nach Eingaben. Nun wieder, das ist wirklich einfach zu beheben, wie Sie im vorherigen Video gesehen haben. Aber die Idee war, Ihnen eine Vorstellung von der Verwendung von PDB zu geben. Aber auch die PDB ist eine wirklich flexible Sache, weil Sie keine Menge von Druckanweisungen eingeben müssen. Sie können die Zeit nur affektiv pausieren, sich im Speicher des Computers umsehen und herausfinden, was vor sich geht , ohne 20 Druckanweisungen einzufügen zu müssen. Sie können das Programm durchlaufen und Variablen jedes Mal untersuchen, wenn es herumkommt. 104. Grundlegendes Exception: Hey, alle. In dieser Lektion werden wir behandeln, wie Sie Fehler mit try und except behandeln können. Also lasst uns anfangen. Python bietet eine wichtige Funktion, um unerwartete Fehler in Ihren Python Programmen zu behandeln. Ihre Anwendung sollte die Ausnahme immer abfangen und behandeln, bevor der Benutzer sie sieht. Um Ausnahmen zu behandeln, müssen Sie Python mitteilen, was dies zu tun ist, und dann Code bereitstellen, um die Verarbeitungsaufgaben auszuführen. Die try und except-Anweisungen eignen sich hervorragend für die Behandlung von Fehlern. Es ist eine Steueranweisung, wie es steuert auf das Programm fortschreitet, wenn ein Fehler auftritt. Hier ist die Syntax. Geben Sie den folgenden Code ein. Das Programm versucht, die Anweisung Erythema zehn geteilt durch 0 auszuführen, was unmöglich ist. So wird der verbleibende der try-Blöcke ignoriert und die Anweisung befindet sich im ausnahmeblock wird anstelle der vordefinierten Fehlermeldung für jede der verschiedenen Arten von Fehlern ausgeführt . Wenn Sie die Meldung anzeigen möchten, können Sie das als Schlüsselwort nach dem Fehlertyp verwenden. Zum Beispiel, um die Standardwert-Fehlermeldung anzuzeigen, schreiben Sie. E ist der Variablenname, der dem Fehler zugewiesen wurde. Dies ist ein Beispiel für die Verwendung der vordefinierten Fehlermeldungen und fängt bei unerwarteten Fehlern ab. Eine vollständige Liste der Fehlertypen in Python finden Sie auf dieser Website. Wenn Sie den Benutzern je nach Fehler spezifischere Fehlermeldungen anzeigen möchten , können Sie den Fehlertyp nach dem Schlüsselwort exempt angeben. Lassen Sie uns nun an einigen anderen Beispielen arbeiten. Der Code innerhalb des try-Blocks hat seine Ausnahmen behandelt. In diesem Fall bedeutet die Behandlung der Ausnahme, die Eingabe vom Benutzer mithilfe der INT-Eingabeaufrufe zu erhalten . Wenn eine Ausnahme außerhalb des Blocks auftritt, behandelt der Code sie nicht. Der Except-Block sucht nach einer bestimmten Ausnahme, in diesem Fall Wertefehler. Wenn der Benutzer eine Wertfehlerausnahme erstellt, indem er jam anstelle eines numerischen Werts eingibt, wird dieser Ausnahmeblock ausgeführt. Der else Block enthält den gesamten Code, der mit einem try Blockcode ausgeführt wurde, erfolgreich ist generiert keine Anwendung. Der Rest des Codes befindet sich in diesem Blog, da Sie ihn nur ausführen möchten , wenn der Benutzer eine gültige Eingabe bereitstellt. Wenn der Benutzer eine ganze Zahl als Eingabe angibt, kann der Code diese dann überprüfen, um sicherzustellen, dass sie korrekt ist. Führen Sie den Code aus und geben Sie Jim anstelle einer Zahl zwischen 15 ein. Die Anwendung zeigt eine Fehlermeldung an. Führen Sie nun den Code erneut aus und geben Sie 20 statt einer Zahl zwischen 15 ein. Die Anwendungsausgaben und unerwartete Bereichsfehlermeldung. Ausnahmebehandlung werden Bereichsfehler nicht ausgelöscht. Sie können einen Ausnahmebehandlungsblock in Python erstellen, der generisch ist , weil er nicht wie eine bestimmte Ausnahme aussieht. Manchmal benötigen Sie möglicherweise eine generische Ausnahme. Lassen Sie uns ein Beispiel mit einer Ausnahme-Klausel ohne eine spezifische Ausnahme machen, die an sie angehängt ist. Das Ergebnis ist, dass diese Ausnahme-Klausel auch jede andere Ausnahme abfängt, die auftritt. Der Code erkennt zuerst bestimmte Fehler und verwendet dann nur, wenn nötig, weniger spezifische Handler. Führen Sie den Code aus und geben Sie Jim ein. 105. Mehrere Ausnahmen bearbeiten: Die meisten Anwendungen können mehrere Ausnahmen für eine einzelne Codezeile mit einer einzigen Ausnahmeschlauselgenerieren eine einzelne Codezeile mit einer einzigen Ausnahmeschlausel um verschiedene Ausnahmen zu behandeln, funktioniert nur, wenn eine gemeinsame Aktionsquelle alle Ausnahmeanforderungen erfüllt. Andernfalls müssen Sie jede Ausnahme einzeln behandeln. Das folgende Beispiel zeigt, wie mehrere Ausnahmen behandelt werden, indem eine einzelne Ausnahme-Klausel verwendet wird. Geben Sie den folgenden Code in den Editor ein. Beachten Sie, dass die Ausnahme-Klausel jetzt sowohl einen Wertefehler als auch eine Tastaturinterrupt-Ausnahme unterstützt . Diese Ausnahmen erscheinen in Klammern und sind durch Kommas getrennt. Führen Sie den Code aus, und geben Sie Alan ein. Geben Sie ein. Die Anwendung zeigt eine Fehlermeldung an, führen Sie den Code erneut aus und drücken Sie die Steuerung+c, die gleiche Fehlermeldung. Führen Sie erneut und geben Sie jetzt 20 ein und drücken Sie die Eingabetaste Die Anwendung zeigt die zweite Fehlermeldung an. Wenn Sie mit mehreren Ausnahmen arbeiten, ist es in der Regel eine gute Idee, jede Ausnahme in ihrer eigenen außer Klausel zu platzieren. Dieser Ansatz ermöglicht es Ihnen, Kundenbehandlung für jede Ausnahme bereitzustellen und macht es einfacher, genau zu wissen, welche Miete falsch ist. Natürlich ist dieser Ansatz auch viel mehr Arbeit. Lassen Sie uns ein Beispiel dafür machen, wie Ausnahmebehandlung durchführen , indem Sie mehrere außer Klauseln verwenden. Geben Sie den folgenden Code in den Editor ein. Jede Prüfungsklausel behandelt die unterschiedliche Befreiung. Sie können eine Kombination von Techniken verwenden, außer Klauseln, die nur eine Ausnahme und die andere behandeln , außer Klauseln, die mehrere Ausnahmen behandeln. Führen Sie den Code aus und drücken Sie die Steuerungstaste plus c. Schauen Sie sich die Nachricht an. Jetzt renne wieder und nimm 20. Die Fehlermeldung ändert sich in den Wert, den Sie eingeben, ist falsch. Eine Strategie für die Behandlung von Ausnahmen besteht darin, die exakten Klauseln für alle bekannten Ausnahmen und generischen Ausnahmen bereitzustellen , außer Klauseln, um unbekannte Ausnahmen zu behandeln. Sehen Sie sich die Ausnahme an, eine Hierarchie, die Python an dieser Webadresse verwendet. Im folgenden Beispiel werden wir die Basisausnahme verwenden, die die oberste Ausnahme ist, dann die Tastaturinterrupt-Ausnahme. Und dann werden wir die spezifische ZeroDivisionError-Ausnahme verwenden, nehmen Sie den folgenden Code in den Editor. Der Code beginnt mit dem Erhalten von zwei Eingaben, value1 und value2. Die ersten beiden außer Klauseln behandeln unerwartete Eingaben. Die dritte Ausnahme Klauseln, die ausgelöst werden, wenn das Ergebnis einer arithmetischen Operation zu groß ist, um dargestellt zu werden, oder eine Zahl geteilt durch 0. Die vierte Ausnahme-Klausel behandelte spezifische mathematische Ausnahmen wie das Dividieren durch 0. Wenn etwas innerhalb der Anwendung gut geht, die else Klausel ausgeführt, die das Ergebnis der Operationen ausgibt. Führen Sie den Code aus. Python fordert Sie auf, die erste Zahl einzugeben, Udemy einzugeben, und wie erwartet zeigt Python eine Fehlerausnahmemeldung an. Führen Sie den Code erneut aus, und geben Sie fünf ist der erste Wert und 0 ist der zweite Wert. Jetzt können Sie die arithmetische Ausnahme und die Fehlermeldung sehen. Hier. Ich wollte sagen, dass diese arithmetische Ausnahme nicht so nützlich ist, aber ich habe sie für Lernzwecke eingegeben. Lassen Sie uns diese Codezeilen löschen und den gesamten Code ausführen. Jetzt können Sie den 0 Divisionsfehler erneut ausführen und die Steuerungstaste plus C drücken. Dies ist die Tastaturinterrupt-Ausnahme. In dieser Lektion habe ich genau angegeben, außer Klauseln für die meisten Fälle. Wenn Sie Fragen haben, lassen Sie es mich wissen. Danke fürs Zuschauen. 106. Exceptions aufheben: In einigen Situationen muss Ihre Anwendung eine Ausnahme generieren. Dieser Akt wird als Anheben oder manchmal Auslösen der Ausnahme bezeichnet. Lassen Sie sich einige häufige Szenarien sehen, in denen Sie Ausnahmen auf bestimmte Weise auslösen können. Mal sehen, wie Sie eine einfache Ausnahme auslösen, dass es nichts Besonderes erfordert. Die folgenden Schritte erstellen Sie einfach die Ausnahme und behandeln sie dann sofort. Dieser Code zeigt Ihnen, wie das Auslösen einer Ausnahme auf ihrer grundlegendsten Ebene funktioniert Führen Sie den Code in Python zeigt die erwartete Ausnahme txt an. Python bietet flexible Fehlerbehandlung, da Sie Informationen an den Aufrufer übergeben können, den Code, der Ihren Code aufruft, unabhängig davon, welche Ausnahme Sie verwenden, der folgende Code zeigt, dass Sie die Ausgabe so ändern können , dass es hilfreiche Informationen enthält. Der Wert Fehler Ausnahme, es gibt in der Regel keinen Attributnamen für einen allgemeinen Namen für Zeichenfolgenfehler. Sie können es jedoch nur hinzufügen, indem Sie ihm einen Wert zuweisen, wird angezeigt, wenn das Beispiel die Ausnahme auslöst und die Ausnahme-Klausel sie wie gewohnt behandelt, erhält aber Zugriff auf die Attribute mit e. Sie können dann das Quadrat e Punkt ausführen. Denken Sie daran, um die hinzugefügten Informationen zu erhalten, führen Sie den Code und Python zeigt und erweiterte Wert Fehler Ausnahme. Wie Sie sehen können. 107. Debug in IDLE 2021: Ein Bug ist ein unerwartetes Problem in Ihrer Programmierung. Sie können in vielen Formen auftreten und einige sind schwieriger zu reparieren als andere. Einige Bugs sind schwierig genug , dass Sie sie nicht nur durch Lesen Ihres Programms abfangen können . Glücklicherweise bietet Python idle einige wichtige Tools , mit denen Sie Ihre Programme mühelos debuggen können. Wenn Sie Ihren Code mit dem integrierten Debugger ausführen möchten, müssen Sie diese Funktion aktivieren. Wählen Sie dazu Python-Leerlauf-Menüleiste den Debug-Debugger aus. Im Interpreter sollte der Debug kurz vor der Eingabeaufforderung angezeigt werden, was bedeutet, dass der Interpreter bereit ist und wartet. Wenn Sie Ihre Python-Datei ausführen, erscheint das Debugger-Fenster. In diesem Fenster können Sie die Werte Ihrer lokalen und globalen Variablen bei der Ausführung Ihres Codes überprüfen . Dies gibt Ihnen einen Einblick, wie Ihre Daten während der Ausführung Ihres Codes manipuliert werden. Sie können auch auf die folgenden Schaltflächen klicken, um Ihren Code zu durchsuchen. Geh. Drücken Sie diese Taste, um die Ausführung zum nächsten Haltepunkt voranzutreiben. Diese erfahren Sie im nächsten Abschnitt. Step, drücken Sie diese, um die aktuelle Zeile auszuführen und zur nächsten zu wechseln. Vorbei. Wenn die aktuelle Codezeile einen Funktionsaufruf enthält, drücken Sie diese Taste, um über diese Funktion zu gehen. Mit anderen Worten, führen Sie diese Funktion aus, um zur nächsten Zeile zu gelangen. Pausieren Sie jedoch nicht während der Ausführung der Funktion es sei denn, es gibt einen Breakpoint Out. Wenn die aktuelle Codezeile eine Funktion ist, drücken Sie diese, um die Funktion zu verlassen. Mit anderen Worten, setzen Sie die Ausführung dieser Funktion fort, bis Sie von ihr zurückkehren. Seien Sie vorsichtig, da es keinen Rückwärtstaste gibt. Sie können nur rechtzeitig durch die Ausführung Ihres Programms voranschreiten . Im Debug-Fenster sehen Sie auch vier Kontrollkästchen. Globals, Ihre Programme globale Informationen, Einheimische, lokale Informationen Ihrer Programme während der Ausführung. Stack, die Funktion, die während der Ausführung ausgeführt wird, Quelle, Ihre Datei im Leerlauf-Editor. Wenn Sie eine dieser Optionen auswählen, sehen Sie die relevanten Informationen in Ihrem Debug-Fenster. Breakpoint ist eine Codezeile, die Sie als Ort definiert haben , an dem der Interpreter während der Ausführung des Codes pausieren sollte. Sie funktionieren nur, wenn der Debug-Modus aktiviert ist. Stellen Sie sicher, dass Sie das zuerst gemacht haben. Um einen Haltepunkt festzulegen, klicken Sie mit der rechten Maustaste auf die Codezeile, die Sie anhalten möchten. Dies wird hervorheben, dass die Codezeile in Gelb ein visueller Hinweis auf einen festgelegten Haltepunkt ist. Sie können beliebig viele Haltepunkte in Ihrem Code festlegen. Um einen Haltepunkt rückgängig zu machen, klicken Sie erneut mit der rechten Maustaste auf dieselbe Linie und wählen Sie Haltepunkt löschen. Sobald Sie Ihre Haltepunkte festgelegt und den Debug-Modus aktiviert haben, können Sie Ihren Code wie gewohnt ausführen. Das Debugger-Fenster wird geöffnet und Sie können Ihren Code manuell durchlaufen. Wenn Sie einen Fehler sehen, der Ihnen im Interpreter-Python gemeldet wurde , lasse ich Sie von der Menüleiste in die anstößige Datei oder Zeile springen . Alles, was Sie tun müssen, ist die gemeldete Zeile oder die Anzahl der Dateinamen mit Ihrem Cursor hervorzuheben die gemeldete Zeile oder die Anzahl und Debuggen auszuwählen. Wechseln Sie zu den Schrägstrichen der Datei in der Menüleiste. Dies öffnet die anstößige Datei und bringt Sie zu der Zeile , die den Fehler enthält. Diese Funktion funktioniert unabhängig davon, ob der Debug-Modus aktiviert ist oder nicht. Python Idle stellt auch ein Tool zur Verfügung , das als Stack-Viewer bezeichnet wird. Sie können unter der Debug-Option in der Menüleiste darauf zugreifen. Dieses Tool zeigt Ihnen die Spurleiste eines Fehlers an, wie er im Stapel angezeigt wird. Und die letzte Zeile der Ausnahme, die Python beim Ausführen Ihres Codes im Leerlauf aufgetreten ist. Wenn ein unerwarteter oder interessanter Pfeil auftritt, kann es hilfreich sein, einen Blick auf diesen Stapel zu werfen. Andernfalls kann diese Zukunft schwierig zu analysieren sein und Sie wahrscheinlich nicht nützlich sein , es sei denn, Sie schreiben sehr komplizierten Code. 108. Gestelle, Papier, Scissors: Willkommen bei rock-Paper-Scissors, einem Kommandozeilenspiel. In den nächsten Lektionen lernen Sie, ein Kommandozeilen-Rock-Paper-Scheren-Spiel zu schreiben ein Kommandozeilen-Rock-Paper-Scheren-Spiel , Benutzereingaben zu behandeln , Benutzereingaben zu behandeln, mehrere Spiele hintereinander zu schleifen, Funktionen zum Gruppencode zu erstellen, Wörterbücher zum Speichern von Regeln und Ersetzen von Konstanten durch Ina-Objekte. Eine kurze Anmerkung zu Versionen. gesamte Code in den Lektionen wurde mit Python 3.9 getestet. Es gibt hier nicht viel , das zuerst und spezifisch ist. Alle Dolmetscher, die mit Python 3.4 beginnen , funktionieren einwandfrei. Der gemeinsame Weg, um sich für Programmierung zu interessieren , ist die Liebe zu Videospielen. Dies macht das Schreiben zu Ihrem eigenen Spiel oder logischen Ort, um zu beginnen, wenn Sie programmieren lernen. Grafische Spiele haben zusätzliche Dinge zu lernen, da Sie es damit zu tun haben, sich auf den Bildschirm zurückzuziehen. Kommandozeilenbasierte Spiele sind der perfekte Einstiegsweg. Sie können ein Code-Player-Spiel schreiben, aber nicht unter etwas herabsetzender oder Vektormathematik begraben werden . Wenn Sie noch nie zuvor gespielt haben, ist Rock-Paper-Schere ein Zwei-Personen-Spiel, das oft verwendet wird, um schnell zu entscheiden, wer zuerst geht und ein Brettspiel, wer bekommt das erste Stück Kuchen? Ronnie, einfache Entscheidung. Jede Person zählt bis drei, schüttelt die Faust und macht dann ein Symbol. Das nennt man Werfen. Die Symbole lassen die drei Wege jedes Symbol umkreisen und das andere schlagen. Die Wahl ist und machen Sie eine Faustshow Rock, Rock Smashes Scissors, machen Sie eine Handfläche, um Papier zu zeigen, Papierdeckel zu rocken oder zwei Finger zu zeigen. Vorsicht, wo Sie die in Großbritannien hinweisen, um die Schere zu machen, Schere schneidet Papier. Um eine textbasierte Version des Spiels zu erstellen, musst du Benutzereingaben übernehmen, zufällig den Wurf eines Computers auswählen und wer vergleichen. Als Nächstes zeige ich Ihnen, wie Sie Eingaben von Benutzern erhalten und dann eine Schleife erhalten, um ein wiederholtes Spiel zu erstellen. Danke fürs Zuschauen. 109. Rock, Papier, Scheren mit Python Input und Loops: In der vorherigen Lektion habe ich einen Überblick über das Spiel gegeben. In dieser Lektion zeige ich Ihnen, wie Sie Eingaben von Benutzern erhalten und dann eine Schleife verwenden, um ein wiederholtes Spiel zu erstellen. Die einfachste Form des Spieldienstes indem Sie die Wahl des Benutzers treffen, den Computer eine zufällige Antwort auswählen und dann die Ergebnisse des Benutzers anzeigen. Sehen wir uns etwas Code an, um genau das zu tun. Melden Sie sich bei Ihrem Konto an. Hier fängst du damit an, den Code zu schreiben. Das erste Bit Code, das Sie auf Band beziehen, ist der Import zufällig. Dadurch wird das Python-Modul namens random geladen. Dieses Modul enthält Funktionen, mit denen Sie nach dem Zufallsprinzip zwischen Wahlmöglichkeiten und Zahlen auswählen können. Sie verwenden es, um die Antwort des Computers auf den Player auszuwählen . Apropos Auswahlmöglichkeiten, Sie sollten angeben, welche Möglichkeiten es gibt. In der nächsten Zeile deklarieren Sie Auswahlmöglichkeiten, eine Liste mit den Saiten, Stein, Papier und Schere. Als nächstes tippst du eine Zeile ein, die eine Herausforderung an den Spieler ausgibt. Geben Sie also Klammern drucken, doppelte Anführungszeichen ein, machen Sie Ihren Wurf. Schließen Sie doppelte Anführungszeichen und Klammern. Als Nächstes müssen Sie sich einen Weg überlegen, der eine Antwort eines Spielers anfordert. Dies geschieht mit der Eingabefunktion. Die integrierte Eingabefunktion nimmt eine Zeichenfolge an, die verwendet wird, um den Benutzer zu auffordern, und gibt unabhängig davon zurück, in den der Benutzer eingegeben wurde. Die Wahl des Benutzers wird in der Variablen namens user choice gespeichert . Sie sollten nicht einfach irgendeine zufällige Sache vom Benutzer akzeptieren. Sie möchten sicherstellen, dass es sich um eine gültige Wahl handelt. Sie verwenden also die IF-Funktion. Geben Sie also ein, wenn der Benutzer ausgewählt ist. In dieser Zeile wird überprüft , ob der Benutzer eines dieser Elemente in der Auswahlliste eingegeben hat. Wenn dies der Fall ist, wählt die nächste Zeile zufällig die Antwort des Computers aus. Die Auswahlfunktion für zufällige Module nimmt eine Liste und wählt nach dem Zufallsprinzip eines der Elemente in der Liste aus. Die Auswahl wird zurückgegeben und wird in diesem Fall nach Wahl des Computers gespeichert. Als Nächstes geben wir eine Befehlszeile ein, die eine Print-Anweisung enthält , die dem Benutzer die Ergebnisse zeigt. Geben Sie print open Klammer ein, und drücken Sie die Eingabetaste. Wenn Sie in f-Zeichenfolge noch nicht gesehen haben, ist es eine Möglichkeit, eine Vorlage zu erstellen , die Python ausfüllen wird. Einem f-String wird der Buchstabe F vorangestellt , daher der Name. Dann sucht es nach Klammern. Das sind die lockigen in der Saite. Werte in den Klammerklammern werden durch ihre entsprechenden Variablen ersetzt. In diesem Fall werden die Benutzerauswahl und die Computerauswahlwerte in die Streckung eingefügt. Drücken Sie Enter. Das Ganze wird dann von der Druckfunktion auf den Bildschirm gelegt. Da die IF-Funktion nach gültigen Werten sucht, möchten Sie dem Benutzer mitteilen, ob er sich nicht für etwas Gültiges entschieden hat. dem Benutzer in der nächsten Zeile in dieser else-Klausel mit, Teilen Sie dem Benutzer in der nächsten Zeile in dieser else-Klausel mit, was er getippt hat, und sagen Sie ihm, dass es keine gute Wahl war. Lass uns das Spiel in Aktion sehen. Hier. Ich bringe das Drehbuch in den Rock und es sagt mir, dass ich Rock und den Computer durch eine Schere gewählt habe . Lass es mich noch einmal laufen lassen. Dieses Mal trete ich Lutscher ein. Nein, keine gültige Wahl. Jedes Mal, wenn Sie das Spiel spielen möchten , ist das erneute Ausführen des Befehls viel Arbeit. Nicht so viel, aber du kannst es immer noch einfacher machen. Was ist mit dem Benutzer des Halses wieder nach unten zu fragen? Um dies zu tun, müssen Sie die gesamte Spiellogik in eine Schleife wickeln . Nachdem das Ergebnis angezeigt wurde, fragen Sie den Benutzer auf, ob er erneut spielen möchte. Lassen Sie uns den Code ändern. Der erste Schritt besteht darin, eine Endlosschleife hinzuzufügen. Nach der Listenauswahl mit einer While-Schleife. Die while Anweisung wird so lange geschleift, bis die damit verbundene Bedingung als falsch ausgewertet wird, ist wahr, wird niemals als falsch ausgewertet. Diese Schleife geht ewig weiter. Der nächste Teil der Arbeit ist der vorherige Code, der jedoch in die Schleife eingebettet ist. Also drücke ich vor jeder Codezeile, die wir über Einrückungen in Python gesprochen haben, eine Registerkarte über Einrückungen in Python gesprochen und warum es so wichtig ist. Nur um sich daran zu erinnern, dass Einrückung der führende Leerzeichen, Leerzeichen und Tabs vor jeder Anweisung in Python ist. Der Grund, warum Einrückungen in Python wichtig sind, ist dass Python die Anweisungen behandelt die dieselbe Einrückungsstufe haben, Anweisungen, die vorher gleich oder keinen Leerraum haben dann als ein einziger Codeblock. Einmal wurde Around gespielt. Dieser Prozess, der Benutzer, wenn er erneut spielen möchte, nennen wir ihn erneut variabel. Dann fügen Sie eine Eingabeaufforderung hinzu. Wenn der Benutzer erneut spielen möchte. Ich füge eine neue Zeile hinzu, die die Antworten der Benutzer überprüft und sieht, ob sie mit M übereinstimmt. Im Moment wird die Dot-Lower-Methode für die Antwort aufgerufen , bevor sie verglichen wird. Diese Methode gibt die Kleinbuchstabenversion der Zeichenfolge zurück die Kleinbuchstabenversion der , auf die sie aufgerufen wird. Wenn der Benutzer auf diese Weise Kapital N eingibt, wird es in Kleinbuchstaben n umgewandelt , bevor es verglichen wird. Wenn der Benutzer nein angibt, wird die break-Anweisung aufgerufen. Die Break-Anweisung bricht dich aus der umgebenden Schleife heraus. In diesem Fall würde der Code mit der nächsten Zeile fortfahren. Wenn der Benutzer etwas nach n tippt, wird davon ausgegangen, dass er ja gemeint hat. In diesem Fall wird der Code in der Schleife hier fortgesetzt, Sie fügen einen leeren Druck hinzu , der eine leere Zeile anzeigt. Danach geht die Ausführung zurück an den Anfang der While-Schleife und fordert den Benutzer auf, seinen nächsten Nervenkitzel zu machen. Nur weil es sich um einen Flug handelt, verabschiedet sich der Code vom Benutzer, nachdem er von der While-Schleife abgebrochen ist. Hier ist der neue modifizierte Code in seiner ganzen Pracht. Lass mich den Code ausführen. Diesmal trete ich eine Wahl ein, wenn auch in Papier. Es zeigt mir, was sowohl der Computer als auch ich ausgewählt haben und dann auffordert. Wenn ich nochmal gehen will, werde ich TBS und das Spiel geht weiter. Lass uns noch einmal Papier wählen. Jetzt glaube ich, dass ich fertig bin. Siehst du, ist es nicht schön , dass es sich verabschiedet hat, nur die Entscheidungen zu treffen ist nicht gut genug. In der nächsten Lektion zeige ich dir, wie du sagen kannst, wer gewonnen hat. 110. Gesteins, Papier, Scheren mit Python Wie man einen Gewinner bestimmen: In der vorherigen Lektion habt ihr angefangen, den ursprünglichen Code für die Steinpapierschere zu schreiben . In dieser Lektion zeige ich Ihnen, wie Sie Code hinzufügen , der den Gewinner in jeder Runde deklariert. Ihnen nur die Entscheidungen zu zeigen , die der Benutzer rechts nach Computerwahl getroffen hat, fühlt sich wie ein bisschen leicht an. Fügen wir einen Code hinzu , um zu sagen, wer gewonnen hat. Sie müssen die Logik für jede Situation von x Beats codieren . Warum? Wir sind Rock Smashes Schere, Papierabdeckungen Stein und Schere schneidet Papier. Als Logik, um zu bestimmen , wer eine Art von zusammenpasst, wäre es am besten, dies in eine Funktion zu integrieren. Du könntest es sogar etwas Sinnvolles nennen. Sie beginnen, den vorherigen Code mit der darin enthaltenen Logik zur Gewinnerbestimmung zu ändern . Es empfiehlt sich, verwandte Code-Bits und Funktionen zu gruppieren. Dies ermöglicht die Wiederverwendung von Code durch mehrere Aufrufe der Funktion und die Klarheit des Lesens Ihres Codes. Nach der Liste der Auswahlmöglichkeiten fügen Sie eine neue Zeile hinzu, die die Winterfunktion anzeigen deklariert. Es braucht zwei Argumente. Die erste heißt Benutzerauswahl und die zweite Computerwahl. In der nächsten Zeile prüfen Sie , ob der Benutzer und der Computer denselben Wert gewählt haben. Bei SIL ist die Benutzerauswahl identisch mit der Computerauswahl. Dann gibt das Programm in der nächsten Zeile aus, dass es eine Krawatte gab, und beide Benutzer wählten die spezifische Auswahl aus. der nächsten Zeile fügen Sie else-if hinzu, die nur ausgeführt wird, wenn der Benutzer und der Computer andere Werte gewählt haben. Diese Zeile prüft, ob der Benutzer Rock gewählt hat. Wenn ja, gibt es zwei Unterfälle. Der Computer hat sich für eine Schere und damit den Benutzer entschieden. Der Computer wählte Papier im Computer aus. Denken Sie daran, wenn der Computer Rock gewählt wird, würden Sie nicht hierher kommen, wenn ein bisschen Logik von dieser Linie erfasst wird. Der nächste Schritt besteht darin, eine E Lyft Line hinzuzufügen, die dieser Zeile ähnelt, aber für Papier. Eine ähnliche Logik ist in dem else-if-Block enthalten , der die Win - und Verlustbedingungen für Papier verarbeitet . Dann machst du es erneut im Vergleich zu IRS und damit verbundenen Gewinn - und Verlustbedingungen. Wenn schließlich etwas anderes als Stein, Papier oder Schere getippt wurde, wird es von der else-Klausel erfasst. Indem Sie diese Codezeile eingeben. In diesem Fall wird dem Benutzer mitgeteilt , dass sein Hals schlecht sei. Der Code in der wilden Schleife ist ziemlich nah an der Vorher, nur mit der neuen Zeile, die die Show-Winner-Funktion aufruft. Löschen Sie diese Codezeilen, wir brauchen sie nicht. Geben wir den neuen Code genau hier ein. Du bist bereit, jetzt zu spielen, lass uns das Spiel laufen. Alle Typ ROC. Sei schon wieder spielen. Rock noch einmal und du bekommst die Idee. Ein großer Wenn-dann sonst Blog, wie ich es gerade gezeigt habe, kann etwas schwer zu lesen sein. Es wird nur noch schlimmer , je mehr Bedingungen man vergleichen muss. Diese Art von Code ist so üblich, dass Python 3.1 L eine neue Schlüsselwortstruktur hat, die als Musterabgleich bezeichnet wird. Dies ist ein bisschen neu von einer Syntax in Python , die eine Reihe von Auswahlmöglichkeiten basierend auf einem Muster anzeigt. Diese Struktur ermöglicht es Ihnen, große, wenn dann andere Blöcke mit weniger Codezeilen zu schreiben . Wenn Sie es gewohnt sind, Anweisungen in anderen Sprachen zu wechseln , ist dies ein Sorgerecht dafür. Es gab einige Diskussionen über die Pattern-Matching-Anweisung , aber Sie könnten darüber nachdenken, bis Python 3.10 draußen ist, Sie stecken fest, wenn dann sonst oder Sie sind. Lassen Sie mich Ihnen eine Welle zeigen, die Datenstrukturen in Ihrem Code verwendet Datenstrukturen in Ihrem Code um die Codierungslogik zu vereinfachen und die Größe des If zu reduzieren. Dann blockiere sonst. Wir werden gleich nach der Auswahlliste zwei neue Wörterbücher, Beats und Nachrichten hinzufügen . Nehmen wir die erste Änderung im vorherigen Programm, nämlich die Einführung des Beats-Wörterbuchs. Dieses Wörterbuch speichert die welche Perlen, welche Bedingungen. Jeder Schlüssel des Wörterbuchs ist , steht gegen die Liste der Dinge, die schlagen. Sie werden verstehen, warum Sie die Liste in der nächsten Lektion verwenden. Diese Linie kodiert die Tatsache, dass Stein Scherenpapier schlägt Stein und Schere schlägt Papier. Sie könnten die Nachricht an den Benutzer vereinfachen , indem Sie die Sprache ändern, um x Beats y zu sagen anstatt die Besonderheiten der Rock Smashes Schere zu haben. Stattdessen das Verb, das die Gewinnaktion in einem anderen Wörterbuch beschreibt die Gewinnaktion in , das als Nachrichten bezeichnet wird. Jeder Schlüssel in diesem Wörterbuch ist ein Tupel, das beschreibt, was schlägt, was. Der erste sagt , dass wenn die Schere „Rock Beats “ das Wort „Smashes“ benutzt. Dies kann vereinfacht werden, indem Sie nur den Gewinnerpunkt B haben, den Schlüssel zu diesem Wörterbuch. Die nächste Lektion fügt jedoch eine gewisse Komplexität hinzu, auf die sich dies vorbereitet. Die nächste Zeile kodiert , dass Papier Stein bedeckt, und in der nächsten Zeile schneidet die Schere Papier. Lass mich ein bisschen nach unten scrollen. Wenn die Spielregeln in Wörterbüchern kodiert sind, wird der Code für den Showwinter etwas einfacher. Linie 1819 ist die gleiche wie vor der Überprüfung des thailändischen Zustands. Aber jetzt müssen Sie den Teil des Wenn-dann ändern , sonst wurde die Suche nach schlechten Daten am Ende der Funktion durchgeführt. Ich verschiebe es hier hoch. Lassen Sie uns die Zeilen von 20 bis 36. löschen. Die DOD-Schlüssel-Methode im Beats-Wörterbuch gibt eine Liste aller gültigen Schlüssel zurück. Die Wahl des Benutzers liegt nicht darin. Es bedeutet, dass es keine gültige Wahl war. Der andere Block, der in Zeile 22 beginnt, enthält jetzt all das, wer sein wird, ist welche Logik? In dieser Zeile führe ich einen booleschen Vergleich durch, um zu prüfen ob die Auswahl des Computers in der Liste der Dinge, die BY sind, nach Wahl des Benutzers. Wenn der Benutzer Rock gewählt hat, wird der Key Rock auf Beats angewendet. Rückgabe der Liste, die nur eine Schere enthält. Wenn der Computer eine Schere gewählt hat , gibt es eine Übereinstimmung und der daraus resultierende boolesche Vergleich ist wahr. Diese in Benutzergewinnen gespeicherten Werte. Die nächste Zeile wertet dann die booleschen Benutzergewinne aus. Der Benutzer hat gewonnen, als er sich das entsprechende Verb im Nachrichtenwörterbuch ansah, wobei das Benutzer- und Computerauswahl-Tupel als Schlüssel für die Auswahl von Rock und Schere verwendet wurde, das Ergebnis wird sein zertrümmert. Mit dem Verb, bereit zu gehen. Alles was noch übrig bleibt, ist der Benutzer die gute Nachricht. Diese f-Zeichenfolge zeigt die Wahl des Benutzers, die Wahl des Computers und das zugehörige Verb. Beachten Sie, dass es in den Klammern für die Wahl des Benutzers für die Wahl des Benutzers mehr als nur die Variable gibt. Eine f-Zeichenfolge ermöglicht es Ihnen, Methoden für String-Objekte aufzurufen , die die Methode nicht groß schreiben, gibt eine neue Zeichenfolge mit großgeschriebenem ersten Buchstaben zurück. Dies wird den Anfang des Satzes richtig aussehen lassen. Natürlich gewinnt der Benutzer nicht immer. Die else-Klausel macht die Spiegellogik. Da es sich bei dem Computer um einen handelt, wird das Verb mit der Rückseite des Tupels im vorherigen Block nachgeschlagen . Dann werden dem Benutzer die schlechten Nachrichten mitgeteilt. Code ist etwas kürzer als der große wenn dann sonst Block aus der vorherigen Lektion. In diesem Fall lohnt es sich vielleicht nicht einmal, aber wenn das Spiel komplizierter wird, haben Sie viel Arbeit gespart. Hier gibt es nicht viel zu sehen, was du noch nie gesehen hast. Der Code wurde überarbeitet, aber das Endergebnis soll dieselbe Drei-Wege-Entscheidungsfindung sein , die einfach nicht komplex genug ist. Herzlichen Glückwunsch, du hast gerade ein Spiel in Python programmiert. Sie wissen jetzt, wie man Steinpapierscheren von Grund auf neu herstellt. Und Sie können die Anzahl der möglichen Aktionen in Ihrem Spiel mit minimalem Aufwand erweitern . Schreiben von Spielen ist der unterhaltsame Weg , um das Schreiben von Code zu üben. In diesem Projekt haben Sie eine textbasierte Version von Rock Paper Scissors implementiert . Sie bitten den Benutzer um Eingabe und validiert sie, Looped oder Code, damit wiederholte Spiele hinzugefügt wurden, um die Winterfunktion anzuzeigen, um festzustellen, wer Ihre Show Winterfunktion gewonnen und vereinfacht hat, indem Sie einige ersetzen bedingte Logik mit einer im Wörterbuch gespeicherten Datendarstellung. Ich hoffe, Sie haben in diesem Projekt einen Wert gefunden. Danke für Ihre Aufmerksamkeit und wir sehen uns in der nächsten Lektion. 111. Was ist eine objektorientierte Programmierung (OOP): Hallo an alle. Ich möchte Sie zu unserer Lektion über objektorientierte Programmierung in Python drei begrüßen, dies ist eines der größten und wichtigsten Themen in der gesamten Programmierung. Und wie Sie sehen können, haben wir eine Menge zu decken. Diese Serie bietet Ihnen ein grundlegendes konzeptionelles Verständnis der objektorientierten Programmierung, so dass Sie Ihre Python Programmierkenntnisse auf die nächste Ebene bringen können . Um das Thema voll und ganz zu schätzen, müssen wir zuerst verstehen, warum wir Programme oder übermäßig komplizierte Dinge brauchten. Und es gibt 100 verschiedene Möglichkeiten, wie Sie definieren können, was ein Programm formell ist. Dennoch, im Grunde alle Programme oder eine Reihe von Anweisungen, um Daten auf eine sinnvolle Weise zu manipulieren. Wenn ich Python Kindern beibringe, lasse ich sie immer ein Programm schreiben, das berechnet, wie viele Tage alt sie sind. Und das ist ein großartiges Beispiel für ein Programm, das diesen drei Schritten folgt. Zuerst muss das Programm den Benutzer nach seinem Geburtsdatum fragen. Das sind die Daten, die es akzeptieren wird. Dann manipuliert es die Daten, indem das aktuelle Datum vom Geburtsdatum des Benutzers subtrahiert wird. Schließlich zeigt das Programm das Ergebnis dieser Berechnung auf dem Bildschirm an. Das ist ein großartiges Starterprogramm, aber es ist sehr trivial. Wie verwalten wir große Programme mit vielen Daten, um den Überblick wie ein Videospiel zu behalten. Wie Sie vielleicht schon erraten haben, kommt hier die objektorientierte Programmierung ins Spiel. Objektorientierte Programmierung, kurz OOP, ist ein durchaus gängiges Programmierparadigma. Formal bedeutet dies, dass es eine bestimmte Art ist, Programme zu entwerfen, wie ein Stil, der in Softwareprojekten weit verbreitet ist. Nicht jedes Programm sollte damit geschrieben werden. Oop, aber viele sind es. Und viele Sprachen werden unterstützt. Ein Großteil des Python Codes, mit dem Sie täglich interagieren, wird mit OOP geschrieben. Dies zu verstehen ist ein grundlegender Teil, um ein gripe Python Programmierer zu werden. Es öffnet die Tür, um wirklich coole Software zu erstellen. Das Herzstück von OOP ist die Idee, dass ein Programm aus vielen Einzelobjekten zusammengesetzt ist. Sie können sich vorstellen, dass diese Objekte Entitäten oder Dinge in Ihrem Programm sind. Oft sind sie wie die Substantive in Ihrem Projekt, wie die Person, ein Haus, eine E-Mail oder eine andere Entität wie diese. Diese Objekte sind wie kleine Bündel von Daten, die während der gesamten Lebensdauer Ihres Programms weitergegeben werden . Beispielsweise kann eine Person Eigenschaften wie Name, Alter und eine Privatadresse haben . Dies sind die einzelnen Daten, die das Objekt während seiner gesamten Lebensdauer im Programm speichert. Wenn wir dieses Personenobjekt erstellen, stellen wir sicher, dass Sie ihm einen Namen und ein Alter und eine Adresse geben. Objekte haben auch Verhaltensweisen. Dies sind die Aktionen, die das Objekt ausführen kann. Unsere Person sollte zum Beispiel in der Lage sein zu gehen, zu reden und zu atmen. Häufig müssen diese Verhaltensweisen in den Eigenschaften des Objekts referenziert werden . Wenn wir zum Beispiel unser Sprechverhalten den Namen und das Alter der Person ausdrucken lassen, dann müsste unser Objekt wissen, was sein Alter und Name ist. Diese Eigenschaften haben wir es früher gegeben. Wenn das jetzt alles etwas verwirrend erscheint, mach dir keine Sorgen, als ich mit der Programmierung anfing, war dies die erste echte Hürde, auf die ich gestoßen bin. Und es dauerte nur etwas Hingabe und Übung, bis ich es endlich verstanden habe. Wir werden in den restlichen Lektionen Objekte intensiv nutzen. Und Sie werden das Gefühl lieben, das Sie bekommen, wenn es nur für Sie klickt. Im nächsten Video erfahren Sie, wie Sie unsere eigenen Objekte mithilfe von Python Klassen definieren. Ich seh dich dort. 112. Kurse in Python: Willkommen zurück zu unserer Videoserie zur objektorientierten Programmierung in Python. Im letzten Video haben wir gelernt, was objektorientierte Programmierung ist und welches Problem es löst. Werfen wir nun einen Blick darauf, wie wir unsere eigenen Objekte in Python Programmen definieren können. Um unsere eigenen Objekte zu erstellen, verwenden wir Python Klassen. Klassen werden verwendet, um Objekte praktisch so viele einzigartige Objekte zu erstellen, wie wir wollen. Sie definieren auch einen Typ. Werfen Sie einen Blick auf diesen Code. Mein Unterstrichname entspricht Austin. Hier erstellen wir eine neue Variable namens mein Name mit einem Wert von Austin. Hinter den Kulissen der Variablen verweist tatsächlich auf ein Objekt. Der Objekttyp ist STR, kurz für string , der auf Python Datentyp basiert, den Sie wahrscheinlich zuvor verwendet haben. Python definiert eine Zeichenfolge ist eine Klasse und um diese Art von Objekt von STR zu erstellen, instanziiert wir die STR-Klasse, um eine Klasse zu instanziieren oder eine Instanz einer Klasse zu erstellen, bedeutet nur, ein Objekt aus dieser Klasse zu erstellen. Sie haben hier das Wort Instanziierung, das viel in der Programmierung herumgeworfen wird. Denken Sie also daran, es bedeutet, eine Klasse zu nehmen und ein Objekt aus dieser Klasse zu erstellen. Um dies ein wenig klarer zu machen, werde ich eine meiner Lieblingsanalogien verwenden. Nehmen wir an, wir schreiben ein Programm, das Türen schafft. Wir beginnen damit, eine Klasse für eine einzelne Tür zu erstellen. Diese Klasse hier ist wie die Blaupause, für die wir alle unsere Türobjekte bauen. Die Klasse gibt einige Eigenschaften und Verhaltensweisen an. Denken Sie daran, dass jedes unserer Türobjekte diese haben wird und es wird unabhängig von jedem Türobjekt sein. Eine Tür kann Eigenschaften wie Höhe, Farbe und ob sie derzeit gesperrt ist oder nicht. Es könnte auch Verhaltensweisen wie Öffnen, Schließen und Umschalten Sperren haben. Wir haben eine Türklasse definiert, aber wir haben auch einen neuen Typ definiert, den wir in unserem Programm verwenden können. Lassen Sie uns ein Türobjekt mit einer Höhe von 50 Zoll erstellen, orange lackiert. Und wir werden nur sagen, dass wir es bauen, es ist freigeschaltet. Hier. Wir haben gerade die Türenklasse instanziiert. Denken Sie daran, das bedeutet, dass wir einen Objekttyp von Tür aus unserer Türklasse erstellt haben. Und wir sind nicht darauf beschränkt, nur eine zu erschaffen. So wie wir in der realen Welt viele Türen aus einem einzigen Tür-Blueprint bauen können. Wir können viele Türobjekte aus unserer Einzeltürklasse initiieren. Hier habe ich noch einen instanziiert. Beachten Sie, dass jedes dieser Türobjekte eindeutig ist. Sie haben sowohl unterschiedliche Höhen als auch Farben und jeder von ihnen kann entweder gesperrt oder entriegelt werden. Wir können die Farbe einer einzelnen Tür ändern, und das wirkt sich nicht auf den Rest aus. Diese Objekte sind alle unabhängig und sie haben sich nicht mehr auf die Klasse verlassen. Die Klasse teilt Python nur mit, wie die Objekte erstellt werden sollen. Hier ist eine Frage. Können Sie sich Szenarien vorstellen, in denen Klassen und Objekte in einem realen Programm verwendet werden könnten? Im nächsten Video werde ich Ihnen einige Beispiele geben und dann lernen wir , wie Klassen tatsächlich in Python gebaut werden. 113. Kurs- und Instance: Willkommen zurück zu unserer objektorientierten Programmierung in Python. Im letzten Video habe ich die Frage gestellt, wir werden Klassen und Objekte in echter Software verwenden. Ich habe zwei Beispiele entwickelt, Videospiele in Webbrowsern. Für ein Videospiel können wir in Holt-Eigenschaften eine feindliche Klasse definieren , wie den Namen des Feindes, seine aktuelle Gesundheit und seine Leistungsstufe. Für Verhaltensweisen könnten sie angreifen, Schaden erleiden und schließlich, wenn ihre Gesundheit niedrig genug ist, deklariert Niederlage. Videospiele sind ein gutes Beispiel für komplexes objektorientiertes Software-Design. Sie sind mit vielen und vielen Klassen gebaut und dann verlassen sie sich auf eine oder andere Weise aufeinander. Der Webbrowser, den Sie gerade verwenden, kann auch mit OOP gestaltet werden. Einzelne Dämme können jeweils ihre eigenen Objekte sein, die aus der Tab-Klasse instanziiert werden. Die Eigenschaften können der Titeltext sein, unabhängig davon, ob es sich bei der Registerkarte gerade um die angezeigte Registerkarte handelt oder nicht , und auch um die Webseite, die auf der Registerkarte angezeigt wird. Für Verhaltensweisen könnten wir Kleidung haben und nachladen. Sehen Sie sich nun jede dieser Eigenschaften sorgfältig an. Ich denke, der Titeltext wird als Zeichenfolge dargestellt und ob der Tab geöffnet ist oder nicht. Nun, das könnte ein boolescher Wert sein, wahr oder falsch. Aber wie spät sollte unsere Webseiteneigenschaft B, es gibt keinen in Python eingebauten Datentyp, der alles über eine Webseite speichern kann. Also hier können wir tatsächlich eine separate Klasse namens Seite mit seinen eigenen Eigenschaften und Verhaltensweisen erstellen . Wie Sie sehen können, sind die Eigenschaften einer Python Klasse nicht auf integrierte Datentypen in Python wie INT und SDR beschränkt . Unsere eigenen benutzerdefinierten Seiten wie Seite können auch als Eigenschaften anderer Klassen verwendet werden. Wenn wir eine Klasse TAM unten instanziieren, müssen wir sie auch mit einem Seitenobjekt zur Verfügung stellen, genau wie wir es mit einem STR-Objekt für den Namen zur Verfügung stellen müssen. Der Sinn dieser Übung war es, Ihnen zu zeigen, dass Software als eine Sammlung von Objekten betrachtet wird, die miteinander interagieren. Meiner Erfahrung nach besteht der schwierigste Teil des Lernens von OOP nicht darin, die Konzepte selbst zu erlernen, aber zu lernen, wie man eine Software in Bezug auf OOP entwirft, dauert die Planung Ihres Softwareprojekts oft viel länger als die es. Es ist etwas, das sowohl neue als auch die Saisonentwickler herausfordern kann. Wie Sie mittlerweile wissen, definiert eine Klasse sowohl die Eigenschaften als auch das Verhalten ihres Objekts. Also jetzt lasst uns tatsächlich einen schreiben. Um eine neue Klasse zu definieren, beginnen wir mit einem Schlüsselwort Klassen gefolgt von dem Namen der Klasse. Leicht genug. Und nun, wir haben nicht wirklich gelernt, wie Eigenschaften zu definieren sind Verhaltensweisen in Python. Also lasst uns einfach Pfade schreiben. Dies ist ein spezielles Schlüsselwort, das Python mitteilt, dass dies eine leere Klasse ist. Bevor wir Eigenschaften zu unserer Klasse hinzufügen können, müssen wir lernen, wie sie in Python funktionieren. Zunächst werden Eigenschaften in Python tatsächlich als Attribute bezeichnet. Dies sind zwei Arten von Attributen, Instanzattribute und Klassenattribute. Instanzattribute sind das, was wir zuvor gesehen haben. Dies sind die Attribute, die unabhängig von jedem Objekt sind , wie Türfarbe oder Höhe. Im vorherigen Beispiel. In diesem Beispiel werden unsere Hund-Klassen zu sofortigen Attributen, Namen und Alter. Diese def Unterstrich, Unterstrich, Init, Unterstrich, Unterstrich. Dies ist eine ganz besondere Funktion, die zu unserer Klasse gehört. Dies wird der Initialisierer genannt, und es ist ähnlich wie ein Konstruktor. Wenn Sie das jemals in einer anderen Sprache gesehen haben, nennen wir diese Funktion nicht selbst. Stattdessen ruft Python diese Funktion automatisch auf, wenn wir die Klasse instanziieren. Mit anderen Worten, diese Funktion wird verwendet, um eine neue Objekte aus der Klasse zu konstruieren. Das Ziel des Initialisierers ist es, unserem Objekt anfängliche Attributwerte zur Verfügung zu stellen. Sie können sehen, dieser Initialisierer nimmt drei Parameter, Selbstname und Alter. Wenn wir die Hundeklasse instanziieren, müssen Sie die Werte für den Namen in Alter übergeben, und dann wird diese Funktion den neuen Objekten diese Werte zuweisen. Selbst ist ein ganz besonderes Schlüsselwort, und die Tatsache, dass wir es in unsere Parameter aufnehmen müssen, ist einer dieser kleinen Python Korken. Wir übergeben keinen Wert für sich selbst, wenn wir das Objekt erstellen. Stattdessen wird self verwendet, um auf das aktuelle Objekt zu verweisen, das während der Instanziierung erstellt wird. Wenn wir also sagen, self.age entspricht Alter, sagen wir, nehmen Sie den Wert des Alters, geben wir ein und weisen das den neuen Objekten zu. Alter Attribut nicht, und das gleiche gilt für den Namen. Denken Sie daran, wie wir gesagt haben, dass jedes Objekt seine eigenen unabhängigen Werte für seine Attribute hat , wie wie eine Tür orange und eine andere grau sein kann. Nun, das muss eigentlich nicht der Fall sein. Hier kommen Klassenattribute ins Spiel. Im Gegensatz zu Instant-Attributen, die für jede Instanz der Klasse unabhängig sind , sind Attribute für jede Instanz gleich. Denken Sie es so mit sofortigen Attributen, wir könnten eine Tür eine neue Farbe malen und es würde keine Auswirkungen auf die Farben der anderen Türen. Wenn wir die Farbe jedoch zu einem Klassenattribut machen und sie auf Gelb setzen, wären alle Türen standardmäßig gelb, wenn sie instanziiert werden. Dies ist nur ein Standardwert für die Klasse. Das bedeutet nicht, dass wir alle unsere Türen instanziieren müssen. Wenn Sie die Farbe einer Tür ändern, werden alle von ihnen geändert. Wenn du gerade statisch denkst, ist das ein bisschen anders. Im Beispiel der Dawn-Klasse wird Spezies außerhalb definiert, wenn die Initialisierer-Funktion, was bedeutet, dass es ein Klassenattribut ist. Das bedeutet, dass jeder Hund, den wir instanziieren, standardmäßig ein Säugetier ist. Und das können wir nicht ändern, wenn wir ein neues Dog Objekt erstellen. Im nächsten Video beginnen wir mit der Programmierung unserer Hundeklasse und wir werden sehen, wie die Klasseninstanziierung in Python funktioniert. 114. Attribute zu einem a hinzufügen: Willkommen zurück zu unserer Serie über objektorientierte Programmierung in Python. Im letzten Video haben wir gelernt, wie Python Klassen sowohl Klassenattribute als auch Instanzattributedefinieren können sowohl Klassenattribute als auch Instanzattribute , um besser zu verstehen, wie Klassen instanziiert werden. Gehen wir rüber zur Python -Shell. Ordnung, also bin ich hier in der Python -Shell und werde damit beginnen, eine neue Klasse Dog zu erstellen. Und ich schreibe einfach Pass, der Python sagt, dass wir ein leeres Objekt wollen. Jetzt werde ich einfach dog-like das nennen. Python wird das instanziieren und es wird uns tatsächlich die Speicheradresse unseres neuen Dog-Objekts mitteilen. Das ist diese ausgeklügelte Zahl hier. Jetzt lassen Sie uns ein weiteres Hundeobjekt erstellen. Glauben Sie, dass dieses neue Objekt dieselbe Speicheradresse wie das erste hat? Oder wird es anders sein? Wenn wir hier drücken, werden Sie sehen, dass dieses neue Objekt eine etwas andere Speicheradresse hat. Dies liegt daran, dass jeder Vorfall unserer Hundeklasse einzigartig ist. Sicher, beide Objekte werden aus derselben Klasse erstellt, aber sie sind immer noch verschiedene Objekte im Speicher. Wenn wir tatsächlich unsere Klasse mit dem Initialisierer füllen, könnten wir jedem Objekt verschiedene Attribute zuweisen. Und nur um diesen Punkt nach Hause zu fahren, werde ich zwei neue Hunde erstellen und ich werde sie in den Variablen a und b speichern. Also an dieser Stelle, a und B sind beide Variablen, die auf Objekte im Speicher, Objekte und Typ Hund zeigen . Wir können leicht überprüfen, ob sie das gleiche Objekt sind, indem Sie den Double Equals Operator verwenden. Und wenn ich die Eingabetaste drücke, werden wir sehen, dass sie nicht a und B verschiedene Hundeobjekte sind, obwohl beide Objekte leer sind. Und um zu beweisen, dass beide diese Variablen Art von Hund sind, verwende ich Pythons eingebaute Funktion L, gib es als Argument. Wie Sie sehen können, dass diese Variable auf ein Objekt zeigt , das aus der Hundeklasse instanziiert wurde. Jetzt lassen Sie uns endlich eine echte Hundeklasse bauen und einige echte Hundeobjekte erstellen. Ich bin hier im Python Leerlauf, und ich werde damit beginnen, eine neue Klasse namens Hund zu definieren. Als nächstes tippe ich Spezies gleich Säugetier. Dies wird ein Klassenattribut für unseren Hund erstellen. Das bedeutet, dass jeder neue Hund, den wir erstellen, standardmäßig ein Säugetier sein wird. Aber jetzt möchte ich einige eindeutige Instanzattribute schreiben. Also werde ich der Klasse einen Initialisierer hinzufügen, indem ich meine Init-Funktion austippe. Und jetzt brauchen wir drei Parameter: Selbst, Name und Alter. Denken Sie daran, dass wir keinen Wert für sich selbst liefern, aber wir müssen etwas mit diesen Namen und Altersparametern tun. Also sagen alle Python, dass wir sie einem neuen Objekt zuweisen möchten, das erstellt wird. Hier werden Selbstreferenzen auf das aktuelle Objekt erstellt. So self.name gleich Name, bedeutet, den Namen Parameter Namen dieses Hundes zuzuweisen. Und das war's. Wir haben unsere Hundenklasse erstellt. Lass es uns wirklich runter benutzen. Wir erstellen eine neue Variable namens Tommy. Und das wird auf ein Hundeobjekt zeigen. Wir erstellen ein neues Objekt, indem wir den Klassennamen gefolgt von der Klammer eingeben, fast als ob es eine Funktion wäre. Wenn wir dies tun, wird Python tatsächlich den Initialisierer hinter den Kulissen aufrufen. Und so müssen wir unseren Namen und unsere Altersargumente angeben. Also hier alle den Namen Tommy und wir geben ihm ein Alter von fünf Jahren. Dann machen wir noch einen Hund namens Lily, und wir geben ihm ein Alter von sieben Jahren. Herzlichen Glückwunsch, wenn Sie mitverfolgt haben, haben Sie gerade eine instanziierte Ihre First-Class erstellt. Im Moment haben wir zwei Hunde, einer namens Tommy mit einem Alter von fünf und der andere namens Lily mit sieben Jahren. Aber wie greifen wir tatsächlich auf die Daten innerhalb dieser Objekte zu? Um dies zu tun, können wir den Zugriffsmodifikator verwenden , der in Python der Punkt ist. Also gebe ich eine Druckanweisung ein. Ich werde sagen, leer ist leer und leer ist leer. Und dann werde ich die DOD-Formationsfunktion für diese Zeichenfolge aufrufen, die es uns ermöglicht, diese Leerzeichen zu füllen. Da wir vier Leerzeichen haben, müssen in der Don-Format-Funktion für Argumente übergeben. Also werde ich Tommy Dot Name übergeben, Tommy Punkt, Alter, Lily, nenn Lilly Dämmerungsalter nicht. Diese greifen auf alle Attribute in unseren beiden Objekten zu. Als nächstes sehen Sie, ob beide Hunde das Säugetierattribut haben. Ich werde tippen, wenn Tommy nicht Spezies entspricht der Zeichenfolge Säugetier, dann möchte ich leer drucken ist leer. Dann wie zuvor werde ich diese Leerzeichen mit Tommys Namen und Tommy Spezies mit der Punktformatfunktion füllen . Okay, lassen Sie uns Code ausführen. Und die obige Seite hier können wir genau sehen, was wir erwartet haben. Tommy ist fünf und Lily ist sieben, was von unserem ersten Print-Statement stammt. Und dann, weil Tom ein Säugetier ist, haben wir auch gesehen, dass Tommy ein Säugetier ist, das auf den Bildschirm gedruckt wird. Jetzt lasst uns die Dinge etwas ändern. Nachdem wir die neuen Objekte eines Hundes erstellt haben, ändern wir ihre Attribute. Also werde ich ein paar Zeilen nach oben bewegen und ich werde Lily Punkt h gleich acht eingeben, und dann Tommy gemacht Spezies gleich Maus. Jetzt pausieren Sie dieses Video und schauen Sie sich diesen Code an und denken Sie darüber nach, was es drucken wird. In Ordnung, schauen wir uns mal an. Jetzt sehen wir, dass Tommy fünf ist und Lily acht ist. Das liegt daran, dass Lilys Alter geändert hat, nachdem wir das Objekt erschaffen haben. Und beachten Sie, dass Tom nicht mehr ein Säugetier ist. Das liegt daran, dass wir Tommy als Säugetier zu einer Maus ändern. Und wieder haben wir das getan, nachdem wir das Objekt erstellt haben. Wenn wir diesen Attributen einen Wert zuweisen, der Initialisierer nicht verwendet und das wird nur verwendet, wenn wir neue Objekte erstellen, nicht ihre Attribute ändern. Wenn Sie hier bemerken, sind beide Doug-Objekte völlig unabhängig voneinander. Obwohl sie aus der gleichen Klasse kamen. Obwohl ich Tommy als Säugetier zu einer Maus ändere, ist Lily immer noch ein Säugetier. Und das genau da ist nur Kratzer der Oberfläche der Macht der objektorientierten Programmierung. Im nächsten Video werden wir einen Blick auf Instanzmethoden werfen, was die ausgefallene Python Art ist, Klassenverhalten zu sagen. Wir sehen uns dort. 115. Methoden in einen a hinzufügen: Willkommen zurück zu unserer serien- und objektorientierten Programmierung in Python. Im letzten Video haben wir diese Dawn-Klasse hier erstellt, und wir haben einige Informationen über jedes unserer Hundeobjekte auf dem Bildschirm gedruckt. Wenn Sie sich erinnern, haben wir Türobjekte erstellt, die geöffnet, geschlossen und Protokolle sein könnten. Ich nenne diese Verhaltensweisen, nur um die Konzepte zu demonstrieren. Aber in Python werden diese tatsächlich Instanzmethoden genannt. Eine Methode ist nur im Grunde eine Funktion, die zu einer Klasse gehört. Es verwendet genau die gleiche Weise wie eine Funktion, außer wie der Initialisierer, müssen wir einen Self-Parameter einschließen. Lassen Sie uns tatsächlich einige Instanzmethoden erstellen. Zuerst brauchen wir einen Weg für den Hund, um seine Attribute und eine schöne formatierte Art und Weise zu melden. Wir werden die neue Instanzmethode namens Beschreibung erstellen. Und denken Sie daran, dass wir den Self-Parameter hier einschließen müssen. Und jetzt geben wir zurück ein leeres ist leer Jahre alt, und wir werden die praktische Formatfunktion verwenden, um die Leerzeichen auszufüllen, die den self.name, self.age als Argumente übergeben . Beachten Sie hier, wie wir nicht direkt auf die Konsole drucken. Stattdessen haben wir diese Methode, um eine schöne formatierte Zeichenfolge mit einem Tanzattributen zurückzugeben . Also müssen wir später manuell ausdrucken. Als nächstes sollten wir einen Weg für den Hund hinzufügen, um etwas zu sprechen. Also lassen Sie uns eine neue Instanzmethode erstellen und wir nennen diese sprechen. Dies wird den Zellenparameter wie zuvor nehmen, aber ich möchte, dass ihr Job sagen kann, was wir ihm sagen. Und lassen Sie uns einen weiteren Parameter namens sound hinzufügen. Dies muss zur Verfügung gestellt werden, wenn wir diese Methode später aufrufen. Schließlich werden wir eine formatierte Zeichenfolge zurückgeben, in der der Hundepunktname den Klang sagt, den wir wie zuvor übergeben. Lassen Sie uns nun all diesen alten Code aus dem letzten Mal löschen und wir erstellen ein neues Dog Objekt namens Tommy mit dem Namen Tommy und einem Alter von sechs Jahren. Genau wie bei Attributen können wir dot verwenden, um sofortige Methoden zuzugreifen. Jetzt könnten Sie versucht sein, Tommy Punktbeschreibung hier zu schreiben. Und obwohl das technisch nicht falsch ist, würde das eigentlich nichts an die Konsole ausgeben. Das liegt daran, dass die DOD-Beschreibungsmethode eine formatierte Zeichenfolge zurückgibt , anstatt sie direkt zu drucken. Und so wird dieser Code hier diese formatierte Zeichenfolge erhalten dann buchstäblich nichts damit tun. Wenn wir es tatsächlich sehen wollen, müssen Sie die Rückkehr dieses Methodenaufrufs in die Druckfunktion übergeben. Nächster Slot, um unsere Speak-Methode zu verwenden, wird drucken Tommy schreiben nicht sprechen, und dann werden wir in Graph, Graph übergeben. Und jetzt, wenn wir den Code ausführen, werden wir sehen, dass auf der rechten Seite haben wir Tommy ist sechs Jahre alt, gefolgt von Tommy Says Graph, Graph. Wie Sie sehen können, sind Instanzmethoden arbeiten und sie können sowohl Attribute zugreifen, die zum aktuellen Objekt gehören, als auch neue Daten, die wir in Form eines Methodenparameters übergeben. Lassen Sie uns eine weitere Instanzmethode erstellen, die jedes Mal aufgerufen wird , wenn der Hund Geburtstag feiert. Wir werden hier wieder in unsere Klassen einziehen und wir werden diese neue Methode Geburtstag nennen. Jetzt in der Methode Körper, Ich werde in Selbst Alter plus eins eingeben, die das Alter Attribut des Hundes um eins erhöht. Mit anderen Worten, jedes Mal, wenn diese Methode aufgerufen wird, wird das interne Altersattribut für Hunde um eins zunehmen. Also, jetzt ganz unten, kann ich Tommy Dot Geburtstag sagen und dann kann ich oh, Tommy DOD Beschreibung wieder drucken . Beachten Sie, dass wir keinen Geburtstagsmethodenaufruf in die Druckfunktion einfügen mussten. Dies liegt daran, dass die Geburtstagsfunktion tatsächlich keine Daten zurückgibt, die wir drucken können. Es ändert nur die internen Altersattribute von unserem Hund. Also, wenn ich den Code ausführe, können wir sehen, dass Tommy sechs Graphen Graphen ist und jetzt Tommy sieben Jahre alt ist. An diesem Punkt sind wir fast am Ende unseres OOP-Tutorials, aber ich muss Sie warnen, der letzte Teil kann ein wenig schwer zu erfassen sein, wenn Sie nicht bereits ein grundlegendes Verständnis von allem haben, was wir bisher behandelt haben. Ich würde dringend vorschlagen, diese Konzepte zu praktizieren, indem Sie Ihre eigenen Python Klassen erstellen und sie dann instanziieren. Denken Sie daran, eine Klasse kann praktisch jedes Substantiv sein. Also schauen Sie sich um und sehen Sie, ob Sie etwas in Ihrem Code modellieren können und sich einige Fragen stellen können, wenn Sie Ihre Klasse entwerfen, welche Attribute als Objekt alle Objekte standardmäßig den gleichen Wert für dieses Attribut haben? Oder sind sie alle von der Zeit, als sie erschaffen wurden, bekannt? Welche Verhaltensweisen zeigt das Objekt tatsächlich? Und wie könnten diese Verhaltensweisen das Attribut des Objekts ändern? Wenn Sie wirklich für eine Herausforderung bereit sind, erstellen Sie eine Klasse, bei der eines seiner Attribute tatsächlich ein anderer benutzerdefinierter Typ ist, den Sie definieren, genau wie wir es bei der Tab-Klasse getan haben, die ein Seitenobjekt speichert. Wenn Sie das tun können, dann sollten Sie auf jeden Fall ein solides Verständnis für dieses Material haben und Sie werden alle bereit sein, weiterzumachen. Und auf der anderen Seite, wenn Sie immer noch damit zu kämpfen haben, fühlen Sie sich überhaupt nicht schlecht. Wie ich schon am Anfang erwähnt habe, ist dies ein sehr schwieriges Konzept für viele neue Programmierer, einschließlich mich selbst. Es erfordert, dass Sie über Ihre Software in einer Weise nachdenken , die Ihnen wahrscheinlich völlig fremd ist. Und das ist nicht etwas, das leicht zu meistern ist. Wenn Sie über etwas verwirrt sind oder Sie es einfach vergessen haben, sich frühere Teile des Abschnitts erneut ansehen. Gönnen Sie sich viel Zeit zum Üben. Und wenn Sie das Gefühl haben, dass Sie das Konzept verstanden haben, kommen Sie zurück und erfahren Sie mehr über das letzte Konzept namens Vererbung. Danke fürs Zuschauen. 116. Einführung in die OOP: Willkommen zurück zu unserer Serie über objektorientierte Programmierung in Python. Im letzten Video haben wir über Instanzmethoden gelernt, die verwendet werden, um die Verhaltensweisen darzustellen , sind Objekte die ganze Idee von Klassen, die Objekte erstellen, kleine Bündel von zugehörigen Daten und Aktionen sind eine wirklich mächtige Sache. Aber es ist auch anfällig für schlechte Codierungspraxis, die als trocken bezeichnet wird. Dry steht für nicht wiederholen Sie sich selbst. Dies besagt, dass wir, wenn wir Code schreiben, vermeiden sollten, die gleichen Codeblöcke zu kopieren und einzufügen, wann immer möglich. Wenn Sie nicht-triviale Python Programmierung ausführen und Sie finden, dass Sie Attribute und Instant-Methoden zwischen vielen verschiedenen Klassen kopieren und einfügen. Das bedeutet, dass es wahrscheinlich an der Zeit ist, zu überdenken, wie Sie Ihre Software entwerfen. Werfen Sie einen Blick auf dieses Beispiel. Nehmen wir an, wir schreiben ein Programm, das viele verschiedene Leute konstruieren und pflegen soll . Wie Sie wahrscheinlich erraten können, wird jede Person ein Objekt sein. Aber hier ist die Hütte. Wir können Allgemeinmenschen Objekte haben, und dann können wir spezielle Art von Personen haben, die ein Baby genannt werden. Ein Baby kann alles tun, was ein normaler Mensch tun könnte, außer es könnte Dinge ein bisschen anders machen wie reden. Darüber hinaus kann es auch einige einzigartige Verhaltensweisen haben , die allgemeine Person nicht hat, wie die Fähigkeit, ein Nickerchen zu machen, wann immer es will. Ein Baby zu sein, klingt großartig. Wie Sie vielleicht schon erraten haben, brauchen wir hier zwei verschiedene Klassen, einen für die Person und dann einen für das Baby. Sie werden hier feststellen, dass beide Klassen genau gleich sind, aber die Baby-Klasse hat jetzt ein weiteres Verhalten namens Nickerchen. Jetzt könnten wir unsere Software auf diese Weise entwerfen und es würde gut funktionieren. Aber denken Sie daran, ein Baby muss in der Lage sein, alles zu tun, was eine allgemeinere Person tun kann, wenn auch manchmal etwas anders. Dies bedeutet, dass unsere Baby-Klasse wird genau die gleichen Instanzmethoden haben, die eine Person Klasse hat in den meisten dieser Methoden wird genau gleich aussehen. Aber was passiert jetzt, wenn wir eine Änderung an der Person-Klasse vornehmen wollen? Wenn wir die Aktion von etwas wie Springen zu Spinnen ändern, dann müssen wir auch die Action-Methoden des Babys ändern. Und wenn wir eine andere Klasse wie Erwachsene oder Teenager hinzufügen, dann müssten wir auch diese beiden beibehalten. Kopieren von Code könnte die Dinge im Moment einfacher machen, aber es kann unsere Software zu einem späteren Zeitpunkt wirklich schwierig machen, vor allem, wenn sie wächst. Um dieses Problem zu lösen. Machen wir einen Schritt zurück und denken über die Beziehungen, die zwischen diesen beiden Klassen bestehen. Ich denke, du würdest zustimmen, dass ein Baby eine Person ist, oder? Aus diesem Grund hat es das gleiche Verhalten wie die Person-Klasse. Was wäre, wenn es eine Möglichkeit gäbe, dass die Baby-Klasse automatisch jedes Attribut und Instanzmethode von der Person erbt, aber dann ändern Sie sie ein wenig, um die Bedürfnisse der Babyklasse zu erfüllen. Dann könnten wir sogar unser eigenes Verhalten wie ein Nickerchen hinzufügen , das exklusiv für die Baby-Klasse wäre. Dies hier wird als Objekt-Vererbung bezeichnet. Und wenn es richtig verwendet wird, macht es die Verwaltung vieler ähnlicher Klassen viel einfacher. Vererbung ermöglicht es uns, eine Klasse, die untergeordnete Klasse oder die abgeleitete Klasse oder einer anderen Klasse, die die übergeordnete Klasse oder die Basisklasse genannt wird, zu machen. In Python erbt die untergeordnete Klasse automatisch jedes Attribut und jede Instanzmethode von der übergeordneten Klasse. Aber wir können auch bestimmte Attribute oder Methoden neu definieren. Also, wenn wir wollen, dass unser Baby-Objekt anders spricht, als eine Person Objekt würde. Können wir das tun? Wenn wir wollen, dass unser Babyobjekt die Fähigkeit hat, Nickerchen zu haben, können wir das auch tun. Und wenn wir brauchen, um unsere Person drehen statt springen, können wir die Personenklasse und die Baby-Klasse ändern , die automatisch mit diesen Änderungen aufnehmen wird. Es ist nicht notwendig, Code an mehr als einem Ort zu bearbeiten. Um die Vererbung zu verstehen, Werfen Sie einen Blick auf dieses Diagramm auf der rechten Seite. Und ganz oben auf dem Chart ist Objekt. In vielen Sprachen ist Python enthaltenes Objekt die übergeordnete Klasse aller Klassen in der Sprache. Dies umfasst Bauklassen wie die INT oder die STR, sowie alle benutzerdefinierten Klassen, die wir erstellen. In diesem Diagramm können Sie sehen, dass Baby von Person erbt, die wiederum von Objekt erbt. Wie wir später sehen werden, sieht Python jedes Babyobjekt, das wir erstellen, als auch eine Person und ein Objekt. 117. Inheritance: Willkommen zurück zu unserer Serie über objektorientierte Programmierung in Python. Im letzten Video haben wir über die Idee der Vererbung gelernt, die es uns ermöglicht, eine untergeordnete Klasse zu definieren, die automatisch Attribute und Methoden von ihrer übergeordneten Klasse geerbt hat. Sehen wir uns nun an, wie die Vererbung in Aktion funktioniert. Also höre ich von Python Editor und das erste, was wir tun werden, ist eine neue Klasse namens Person zu definieren. Ich werde sehen, dass die Beschreibung gleich allgemeine Person ist, die unser einziges Klassenattribut sein wird. Jetzt werden wir unsere Initialisierer-Methode erstellen und es wird ihm Parameter von Name und Alter geben. Wie üblich legen wir die Attribute gleich diesen Parametern fest. Jetzt wollte ich ein paar Verhaltensweisen finden, die jeder Mensch haben wird. Ich erstelle eine neue Instanzmethode namens Speak, und der einzige Parameter ist selbst. Und ich werde diesen Ausdruck meines Namens ist leer und ich bin leer Jahre alt. Um diese Lücken zu füllen, verwende ich die Formatfunktion und gebe sie im self.name weiter. Selbst.Alter ist Argumente. Als nächstes möchte ich, dass unsere Person in der Lage ist, alles zu essen, was wir ihnen geben. Also werde ich hier sagen, Def, essen Selbstnahrung, Semikolon, und dann drucke ich ein leeres, jedes leeres. Und um diese Leerzeichen auszufüllen, wird sowohl Selbstnamen als auch unseren Self-Food-Parameter übergeben. Lassen Sie uns schließlich unserer Person die Möglichkeit geben, eine Aktion auszuführen. Also werde ich eine letzte Instanzmethode namens action erstellen. Und wenn das aufgerufen wird, sagen alle leere Sprünge und ich werde mich selbst benennen, um das Leerzeichen zu füllen. Okay, jetzt, da wir unsere allgemeine Personenklasse haben, erstellen wir eine Unterklasse namens Baby. Um dies zu tun, werde ich Baby wie zuvor eingeben, aber dann werde ich in Klammern setzen. Innerhalb dieser Klammern müssen klären, was die Elternklasse des Babys sein wird. Also tippen wir persönlich ein. Und jetzt technisch gesehen, wenn ich Pfade in den Klassenkörper schreiben würde, dann wird unser Baby nutzbar sein, dann wird unser Baby nutzbar sein, aber sie werden genau dasselbe tun, wie die Person. Also wollen wir das ändern. Zuerst werde ich unser Beschreibungsklassenattribut neu definieren. Ich setze es auf etwas, das Baby mag, und das sollte funktionieren. Diese Neudefinition hier wird als Überschreiben bezeichnet, da jedes Babyobjekt, das wir erstellen, stattdessen eine bestimmte Beschreibung mit einer Beschreibung verwendet, die automatisch von der Personenklasse geerbt wird. Um dies zu tun, gebe ich def speak with self als Parameter ein. Und dann sage ich „Mama drucken“, was nur ein paar Babyspender ist, als ich es mir ausgedacht habe. Auf diese Weise, wo wir sprechen Methode auf ein Baby nennen. Es wird sagen, dieses g Kauderwelsch anstelle von dem, was die Elternklasse gesagt hätte. Schließlich möchte ich diesen Babys und exklusive Funktionalität geben. Lassen Sie uns dem Baby die Möglichkeit geben, zu schlafen, wann immer es will. Alle sagen def, Nickerchen mit einem Umfang von Selbst. Und dann schreibe ich leer, macht ein Nickerchen. Und anstelle des Rohlings sage ich Selbstname. Jetzt wird jedes spezifische Babyobjekt, das wir erstellen, die Fähigkeit haben zu Nickerchen, aber ein allgemeineres Personalobjekt wird es nicht. Alles, was wir tun müssen, ist, diese Klassen zu instanziieren und sie an die Arbeit zu bringen. Ich erstelle ein neues Personenobjekt namens Person, und er wird im Alter von 30 Jahren den Namen John haben. Dann möchte ich alle diese Instanzmethoden der Person aufrufen. Also werde ich Person dot sprechen in Person dot essen eingeben. Und wir geben ihm Fisch. Und schließlich Person.Alle Maßnahmen, um ihn zu sehen springen. Lassen Sie uns nun ein Babyobjekt namens Baby erstellen. Ich muss dem Initialisierer für das Baby einen Namen und ein Alter geben. Aber wenn Sie schauen, Baby hat nicht wirklich einen Initialisierer. Das liegt daran, dass es automatisch von der Personenklasse geerbt wurde. Denken Sie daran, dieses Baby gilt auch als eine Person und als solches muss es auch die sofortigen Attribute der Person ausfüllen. Also geben wir diesem Baby einen Namen Van ISIL und ein Alter von 1 Jahren. Dann werden wir die gleichen Instanzmethoden unseres Babyobjekts nennen. Ich drucke sowohl die Beschreibungen unserer Person als auch die Beschreibung des Babys aus. Lassen Sie uns den Code ausführen. Diese ganze Übung zeigt uns, wie wir eine untergeordnete Klasse oder eine abgeleitete Klasse definieren können , die automatisch alles von der übergeordneten Klasse oder der Basisklasse erbt. Wir können Attribute und Methoden wie Beschreibung überschreiben und sprechen. Und wir können sogar unsere Kind-Klasse erweitern, um neue Funktionen hinzuzufügen, wie wir es mit der NAT-Methode getan haben. Nur um dies noch klarer zu machen, werde ich zu einer neuen Zeile wechseln und Person Punkt eingeben. Wenn Sie sich erinnern, ist der Don wie der Zugriffsmodifikator, der uns erlaubt , auf Attribute zuzugreifen und Methoden eines Objekts aufzurufen. Da dieses Objekt eine Person ist, beachten Sie, wie intellisense die NAT-Methode nicht sieht. Das liegt daran, dass es spezifisch für die untergeordnete Klasse ist und als solche nur untergeordnete Objekte sie haben. Wenn ich dies jedoch lösche und ich zu Baby wechselte und ich Punkt trage, können Sie sehen, dass wir Zugriff auf alles haben, was in der Person-Klasse definiert ist, sowie auf die spezifische Net-Methode. Aber was ist, wenn uns gesagt wird, dass wir eine Änderung an der Aktionsmethode vornehmen müssen, möchten wir vielleicht jetzt, dass beide Leute sich drehen anstatt zu springen, anstatt Code in mehreren verschiedenen Klassen ändern zu müssen. Alles, was wir jetzt tun müssen, ist, das Wort springt auf das Wort Spins in unserer Personenklasse zu ändern. Wenn wir diesen Code ausführen, werden Sie feststellen, dass sowohl John als auch Bands sich drehen, anstatt zu springen. Und wir mussten keine einzige Modifikation an der Babyklasse vornehmen. Dies ist einer der Gründe, warum die Vererbung so mächtig ist. Denken Sie daran, wie früher ich gesagt habe, dass Python hinter den Kulissen jedes Objekt als Typobjekt sieht. Nun, da wir unsere Kurse codiert haben, kann ich Ihnen zeigen, dass das wahr ist. Um zu beweisen, dass ein Baby eine Person ist, werde ich das Ergebnis dieser speziellen Funktion namens ist Instanz ausdrucken. Diese Funktion wird uns sagen, dass das spezifische Objekt ein bestimmter Typ ist. Diese Funktion benötigt zwei Argumente, also werde ich es im Babyobjekt für das erste übergeben und möchte überprüfen, ob das Babyobjekt eine Instanz von Person ist. Wenn ich den Code hier ausführe, sehen Sie, dass wir auf der rechten Seite wahr sehen. Und das liegt daran, dass ein Baby eine Person ist, das Babyobjekt vom Typ Baby, sondern auch die Art der Person, weil es alles aus der Personenklasse erbt. Jetzt sehen wir, ob unser Babyobjekt vom Typ Objekt ist. Ich ändere das Wort Person hier in Kleinbuchstaben Objekt. Und wenn wir diesen Code ausführen, werden wir sehen, dass unser Baby tatsächlich ein Objekt ist. Weil Baby eine Person ist und eine Person vom Objekt erbt. Daher erbt Baby von Objekt zu wie ich zuvor erwähnt habe, jede Klasse in Python erbt vom Objekt. Und das müssen wir eigentlich nicht innerhalb der Klassendeklaration schreiben. Der Grund dafür, dass die Objektklasse selbst vorhanden ist, liegt außerhalb des Anwendungsbereichs dieses Tutorials. Aber für jetzt, nur wissen, dass unsere Baby-Objekte sind technisch gesehen als ein Baby, eine Person und ein Objekt. Und das ist eine kurze Einführung in die Vererbung. Wir haben nicht alles abgedeckt, aber das gibt Ihnen eine allgemeine Liste, wie die Vererbung funktioniert. Wie Sie sehen können, kann die Vererbung äußerst vorteilhaft sein, aber wenn sie nicht richtig verwendet wird, kann es mehr Kopfschmerzen als alles andere sein. Vererbung ist eine der grundlegenden Säulen der objektorientierten Programmierung, aber es ist nicht die einzige. Und es gibt noch mehr an der Vererbung, die wir hier nicht abgedeckt haben. Aber dieses Tutorial konzentriert sich mehr auf die grundlegenden Prinzipien von OOP anstatt irgendwelche spezifischen Merkmale der Vererbung, Polymorphismus, Kapselung. O p ist ein riesiges Thema und das ist schwer zu meistern. Aber hoffentlich haben Sie jetzt zumindest eine grundlegende Wertschätzung dafür wie groß Software mit Klassen und Objekten gestaltet ist. Meinung nach wird das Programmieren viel mehr Spaß mit dem Verständnis von OOP. Weil Sie über das Schreiben von trivialen Programmen wie einem Zahlenratespiel hinausgehen und mit Frameworks und Bibliotheken wie Django und Map Plot lib, Happy Coding, echte Software schreiben können. 118. Script, Module, Pakete und Bibliotheken 2022: Python verwendet viele ausgefallene Terminologie, mit denen Sie möglicherweise nicht vertraut sind, wenn Sie noch nicht mit der Programmierung vertraut oder aus einer anderen Sprache kommen. Vor Python war mein Hintergrund hauptsächlich in Pfund und Microsofts Dot NET Framework. Ich erinnere mich dass ich versuchte Python zu lernen, aber von all diesen Schlagwörtern verwirrt war. Mein Ziel in dieser Lektion ist es, etwas davon zu klären , damit es für Sie später nicht so verwirrend ist. Python-Skript ist am besten als Python-Datei definiert , die Befehle und logische Reihenfolge enthält. Damit dies als Skript betrachtet wird, muss das Programm etwas tun, wirklich alles, wenn es durch den Python-Interpreter ausgeführt wird. Um dies besser zu verstehen, schauen Sie sich diese beiden Programme an. Beide Programme enthalten eine Funktion, die die Summe zweier Werte zurückgibt. Allerdings ruft nur das Programm oder das Recht diese Funktion tatsächlich auf und druckt ihr Ergebnis aus. Die Datei auf der rechten Seite soll direkt ausgeführt werden. Wir können also sehen, dass es ein Python-Skript ist. Auf der anderen Seite sieht das Programm auf der linken Seite nicht so aus, als wäre es eigentlich dazu gedacht, irgendetwas zu tun. Das Ausführen dieser Datei führt zu keiner Art von Ausgabe, da die Funktion nie aufgerufen wurde Sie soll nicht direkt ausgeführt werden. Die Datei auf der linken Seite ist besser als Modul eingestuft. liegt daran, dass wir es in andere Dateien importieren können , um seine Klassen, Funktionen, Variablen und andere Mitglieder zu nutzen . Es ist definiert. Ich werde das Programm auf der rechten Seite ändern , damit wir es, anstatt die Funktion „Klammern hinzufügen“ zu definieren, es aus dem Modul auf der linken Seite importieren. Dies hat den Effekt, dass die Additionsfunktion links für das Skript auf der rechten Seite zugänglich ist. So lange Kurzskripte sollen direkt ausgeführt werden, während Module importiert werden sollen. Skript enthält oft Anweisungen außerhalb des Geltungsbereichs einer Klasse oder Funktion. Während Module, um Klassen, Funktionen, Variablen und andere Mitglieder für die Verwendung in Skripten zu finden , Variablen und andere Mitglieder , die wichtig sind. Das Wort Skripte und Module werden oft austauschbar verwendet. Seien Sie sich also bewusst, dass andere Personen sie auf eine Weise verwenden , die diesen Definitionen nicht strikt folgt. Pakete sind eine Sammlung verwandter Module. Ein Paket kann ein einzelnes Python-Modul sein, aber es handelt sich meistens um eine Sammlung mehrerer verwandter Module , die gebündelt werden. Dies ist das Datum-Util-Paket, das die Durchführung erweiterter datenbezogener Operationen ermöglicht. Es ist in einem Ordner namens date util gebündelt. Im Inneren befinden sich eine Reihe einzelner Module sowie Ordner mit anderen Modulen, sowie Ordner mit anderen Modulen die in Ihre Python-Skripte importiert werden können. Dies sind Module , weil sie alleine nichts Interessantes machen. Wenn Sie eines in Ihr eigenes Skript importieren , passiert wirklich nichts. Sie müssen etwas verwenden, das in den Modulen definiert ist, z. B. eine Klassenfunktion oder eine Variable. Diese spezielle Intel-Datei teilt Python mit, dass es sich um ein Paket handelt, das möglicherweise mehr Module enthält , die in Unterordnern verschachtelt sind. Wir können nicht über Bibliotheken sprechen, ohne Python Standard Library zu erwähnen. Die Python-Standardbibliothek ist eine große Sammlung von Modulen und Paketen, die in Ihrer Python-Ausgabe gebündelt sind . Das bedeutet, dass Sie sie von nirgendwo herunterladen müssen . Sie können sie einfach in Ihre Skripte importieren und sofort verwenden. Date util ist ein Beispiel für ein Standardbibliothekspaket, aber es gibt auch andere wie E-Mail und JSON. Der Schlüssel zum Mitnehmen ist, dass vieles davon in gewissem Maße subjektiv ist. Skripte sind ausführbare Python-Programme , die beim Ausführen etwas tun. Module oder Python-Dateien, die in Skripte und andere Module importiert werden sollen , damit sie definierte Mitglieder wie Klassen und Funktionen sind , können verwendet werden. Pakete sind eine Sammlung verwandter Module, die darauf abzielen, ein gemeinsames Ziel zu erreichen. Schließlich ist die Python-Standardbibliothek eine Sammlung von Paketen und Modulen , die für den Zugriff auf integrierte Funktionen verwendet werden können . In einer idealen Welt würden Sie alle notwendigen Module ohne Probleme in Python-Skripte importieren . Leider ist das oft nicht der Fall. Im nächsten Video erhältst du eine Einführung in Module und ich zeige dir, wie man ein Modul schreibt. Danke fürs Zuschauen. 119. Ein Modul schreiben: In diesem Video erhalten Sie eine Einführung in die Module, indem Sie ein eigenes kurzes Modul schreiben. Es gibt drei verschiedene Arten von Modulen in Python. Modul kann in Python selbst geschrieben werden, aber Module können auch in C geschrieben und dann dynamisch zur Laufzeit geladen werden. Und dann gibt es auch eingebaute Module, die intrinsisch im Interpreter selbst enthalten sind . Und vielleicht haben Sie bereits ein paar von ihnen in der Vergangenheit importiert, wie Mathematik oder das Importieren von zufälligen Datumslinien. Für dieses Video lasse ich Sie die erste Option ausprobieren ein einfaches Modul in Python selbst schreiben. Lassen Sie mich, dass Sie das ausprobieren und einen Redakteur. Zunächst einmal machen wir eine neue Datei und nennen sie mod dot PY. Mod dot PY ist eine Standard-Python Datei. Innerhalb davon werden Sie eine String-Objekte mit kleiner Liste erstellen und eine Funktion definieren. Nennen wir es einfach print_i. Pretty nimmt ein Argument namens ARG und druckt den Druck mit einer F-Zeichenfolge. Es gab eine Argumentanweisung, dass das F dem Bogen entspricht, den Sie eingeben die Variable in der F-Schrumpfung aufruft. Dann mach eine Klasse. Du nennst es „Hauptstadt edel“. Da ist deine Klasse. Und gerade jetzt tut diese Klasse nichts. Es geht einfach vorbei, speichern Sie die Datei und führen Sie sie aus. Was Sie dann von der Python -Shell aus tun können, ist der Import. Da Sie sich im selben Verzeichnis befanden, in dem Sie die Datei erstellt haben, können Sie den Importmodus sagen. Okay, was hat das gemacht? Durch den Import von Mod? Sie haben alle Objekte importiert, die Teil dieses Codes waren. Du könntest sagen, OK, nun, was ist das? Mod dot a will mob don a. Ist das Lyse früher für mod dot S. Nun, das ist eine Zeichenfolge. Wenn Sie Drucken verwenden wollten, könnten Sie sagen, okay, model.predict ist jetzt auch verfügbar. Das Argument ist Was ist oben in print_i druckt aus, dass der ARG gleich zwei ist, was los ist? Und Sie können ein neues Objekt namens x mit MOD dot stilvoll machen. Was ist x? Nun, x ist ein klassisches Objekt aus dem Modul mod. Cool. Jetzt haben Sie Zugriff auf all diese verschiedenen Objekte, indem Sie dieses Modul importieren, was eine Menge Wiederverwendbarkeit von Code ermöglicht. Sie nun etwas importiert haben, konzentrieren Sie sich im nächsten Video darauf, wo der Interpreter nach den Dateien sucht, die Sie importieren. 120. Der Suchpfad: In diesem Video werden Sie den Modul-Suchpfad erkunden. Also, wo Sie ein Modul importieren können. Wenn der Interpreter die Importanweisung ausführt, sucht er nach dieser Datei. In Ihrem Beispiel hier war es math.pi. Es wird nach diesem und ganzheitlichen Verzeichnissen, den Möglichkeiten oder dem aktuellen Verzeichnis suchen , was bedeutet, von wo das Import-Skript ausgeführt wurde. Und es sucht auch in der Python Pfad-Umgebungsvariablen, die eine Liste von Verzeichnissen hat. Wenn Sie Python installieren, gibt es eine Reihe von Verzeichnissen, die als Teil der Python-Rate konfiguriert werden. Auch wenn Sie aus Baumodulen importieren , kommt der Code von dort her. Und es gibt eine Möglichkeit, all diese zu sehen, um diese Liste von Verzeichnissen zu sehen. Lassen Sie mich Ihnen zeigen, dass es im Code im Python 39-Verzeichnis eine math.pi-Datei gibt. Wenn Sie Ihre math.pi-Datei in diesem Verzeichnis gespeichert haben, können Sie import in mod eingeben. Die math.pi Datei ist genau da. Großartig. So ist jetzt Ahmad don a verfügbar, MA dot S ist verfügbar. Ok. Wenn Sie alle Orte sehen möchten, von denen importiert werden kann. Derzeit gibt es ein Tool namens SYN-Modul , das Teil der Bibliothek ist, die Sie importieren können. Und das kann Ihnen den aktuellen Python Pfad und die Verzeichnisse zeigen , die in Python eingerichtet wurden, das installiert wurde, importieren Sie SY S, ein Modul, das systemspezifische Parameter und Funktionen enthält, auf die Sie zugreifen können. Und einer davon ist syst dot path. So syst dot path wird Ihnen eine Liste zeigen. Hoppla, ich habe den Punkt vergessen. Hoffentlich können Sie hier mit den eckigen Klammern sehen, dass dies alle Objekte sind nach denen Ihr Interpreter suchen wird, wenn Sie das Wort importieren eingeben und dann nach einem bestimmten Modul suchen, das Sie importieren. Dies ist das Standardverzeichnis, in dem Sie sich befinden, das aktuelle Verzeichnis. Also würde es genau dort suchen. Dann geht es von dort in eine Version von Python, die Sie installiert haben. Ich werde hier raus gehen. sind also alle Speicherorte, die Sie eine Datei speichern könnten, entweder im aktuellen Verzeichnis oder in einem dieser anderen Verzeichnisse, die Sie nach dem Ausführen des syst dot path sehen. Was ist, wenn Sie Speicherorte hinzufügen möchten, damit es importiert werden kann? Das ist eine Möglichkeit,, um diesen Punkt zu beweisen. Ich werde machen, dass dies nicht das aktuelle Verzeichnis ist. Nun, wenn Sie importieren und dann mod eingeben würden, wird es sagen, dass der Zeitplan nicht gefunden wird, es ist derzeit in diesem Verzeichnis oder in einem der anderen Orte, die, wenn wir sys importieren und diese.tab verwenden, nicht in einem dieser -Speicherorte, die importiert werden, in. Wo sollten Sie also Ihre Moduldatei ablegen um sicherzustellen, dass Ihr Skript, von dem Sie den Importbefehl verwenden, es eingeschränkt hat. Sie haben ein paar Möglichkeiten. Sie könnten es im selben Verzeichnis ablegen. Das Eingabeskript wird in geschrieben, was normalerweise als aktuelles Verzeichnis betrachtet wird. Sie können die Umgebungsvariable Python Pfad ändern oder sie in einem der Verzeichnisse einfügen, die sich bereits in diesem Python-Pfad befinden. Sie können es auch in einem der Verzeichnisse ablegen, die als Teil Ihrer Python Rate konfiguriert sind. Nun gibt es eine andere Lösung, die zur Laufzeit durchgeführt werden kann. In diesem Fall könnten Sie die SIS-Pfadliste tatsächlich ändern. Um dies zu tun, verwenden Sie eine Anweisung anhängen, genau wie Sie von jeder anderen Liste abhängen würden. In diesem speziellen Fall können Sie vom festgelegten Pfad aus anhängen. Und als Argument geben Sie eine rohe Zeichenfolge ein. Sie beginnen also mit r und dem einfachen Anführungszeichen. Jetzt benötigen Sie den Verzeichnispfad, den Sie einfach eingeben können. Wenn ich meine Anführungszeichen dort schließe, ist dies ein Namensfehler. Kannst du erraten, warum? liegt daran, dass sie das sys-Paket nicht definiert haben. Also lassen Sie uns importieren Punkt sagen, dass diese Codezeile erneut ausführen. Also, was hat das getan? Nun, wenn Sie sich diesen syst dot Pfad jetzt am Ende ansehen, hat er diesen bestimmten Ort, dieses Verzeichnis in den Pfad umgedreht . Wenn Sie import mod eingeben würden, kann er es jetzt in importieren. Großartig. Eine Sache, die Sie sich jedoch merken müssen, wenn Sie diese Speicherorte anhängen, sind jene Verzeichnisse, in denen Sie sie importieren können, die nur für diese bestimmte Sitzung dauert. Wenn Sie also beenden und erneut beginnen, um Mod zu importieren, ist es nicht verfügbar, denn wenn Sie sys importieren und seinen Pfad erneut verwenden, können Sie sehen, dass es nicht mehr Teil dieser Liste ist. Das müsste also Teil Ihres Eingabeskripts sein. Dann fügen Sie den SIS-Pfad an das Verzeichnis anhängen. Im nächsten Video wirst du einen tieferen Einblick in diese Importaussage nehmen. 121. Die import: In diesem Video werden Sie einen tiefen Einblick in die Import-Anweisung nehmen. Schnelle Formulare. Kann die import-Anweisung in ihrer einfachsten Form annehmen? Es ist wie das, was Sie bereits im vorherigen Video verwendet haben, importieren und dann den Namen des Moduls. In diesem Fall ist der Inhalt des Moduls nicht direkt für die Farbe zugänglich, daher müssen Sie die Punktnotation verwenden. Das Modul erstellt einen separaten Namespace. Lassen Sie mich Ihnen zeigen, wie das aussieht. Jetzt haben Sie dies bereits praktiziert, aber Sie können import mod eingeben und dann Ihr Modul importieren. Der Trick dazu ist, dass sich die Objekte, die Sie bereits importiert haben , nicht im gleichen lokalen Namespace befinden, sondern sich nicht in der lokalen Symboltabelle befinden. Wenn Sie also den Buchstaben a eingeben und dann Objekt nicht verfügbar ist, ist S nicht verfügbar. Print_i, jedes dieser Objekte ist nicht verfügbar. Sie müssten zuerst eine Don Notation verwenden, die mit dem Namen des Moduls beginnt , nachdem Sie das DOD hinzugefügt haben. Jetzt kann ich auf eine zugreifen oder Sie können auf s oder sogar print_i zugreifen. Als Anmerkung, Sie können mehrere Module gleichzeitig importieren, einfach ein Komma zwischen den Namen der einzelnen. Alternativ können einzelne Objekte aus dem Modul wie folgt importiert und dann der Name des Moduls importiert werden, und dann werden die Objektnamen importiert. Und dann würden Sie die Objektnamen verwenden, in denen Sie mehrere mit Kommas dazwischen verwenden können. Die einzelnen Objekte sind direkt für die Farbe zugänglich, dann werden sie direkt in die Farbsymboltabelle importiert, was bedeutet, dass Sie den Namespace zu diesem Zeitpunkt nicht trennen müssen. Lassen Sie mich Ihnen zeigen, wie das aussieht. Diese wurden nun aus der lokalen Symboltabelle importiert. S ist tatsächlich verfügbar und so ist das Drucken im lokalen Namespace nicht erforderlich, dass Sie die Punktnotation verwenden. Es muss jedoch vorsichtig sein, wenn Sie ein Objekt a erstellen würden, und sagen wir, a hat ein paar Strings in einer Liste. Es gibt eine. Aber wenn Sie ein von Ihrem Knotenmodul importieren, was passiert mit dem vorhandenen lokalen a? Nun, es wurde überschrieben, und so erzeugt dies eine Kollision, wenn Sie so wollen, das vorhandene Objekt überschreiben. Es gibt also eine Notwendigkeit, vorsichtig mit dem Namespace hier in einfachen generischen Namen zu sein. Jetzt ist es auch möglich, alles aus einem Modul auf einmal zu importieren. In diesem Fall wird es von und dann der Name des Moduls importiert, und dann ein Sternchen. Sie haben dies wahrscheinlich schon in einem oder zwei Skript gesehen, dass dieser Ort alle Namen der Objekte in der lokalen Symboltabelle ist. Das einzige, was nicht als irgendetwas importiert wird, das mit einem Unterstrich beginnt, hält es privat für das Modul selbst. Dies wird nicht unbedingt empfohlen, es sei denn, Sie kennen alle Namen, die nicht in Konflikt stehen oder vorhandene Namen überschreiben, können Sie Probleme haben. Dadurch werden alle benannten Objekte aus dem Modul in die lokale SymbolTable übernommen. Also jetzt Klassen dort. Das String-Objekt S. Ich werde wieder beenden. Sie können auch einzelne Objekte haben und sie dann in einem alternativen Namen benannt haben , der wie folgt aus dem Modulimport aussehen würde, unabhängig von dem Namen des Objekts. Und dann als das, was Sie möchten, dass das Objekt umbenannt werden, da Sie dies mehrmals tun können, was es ermöglicht, die Namen direkt in die lokale SymbolTable zu platzieren. Daher würden Konflikte mit vorhandenen Namen vermieden. Sie müssen immer noch vorsichtig sein, was auch immer Sie als alternative Namen wählen. In diesem Beispiel haben Sie immer noch lokale Variablen mit dem Namen a und eine andere mit dem Namen S, bei der es sich um eine Zeichenfolge handelt. Hier sind die beiden Objekte a und als. Wenn Sie also a und S aus Ihrem Modul importieren würden, würde es über diese beiden schreiben. Und was Sie tun können, ist von einem Mod-Import sagen zu fragen, geben Sie ihm einen neuen Namen, vielleicht nennen Sie es nur als String. Und a ist eine Liste. Also wieder, Sie können dieses Komma verwenden, um mehrere Importe auf einmal durchzuführen. So ist jetzt ein immer noch da und S ist immer noch da. Aber string ist, wo Sie es importieren. Und eine Liste ist auch das, was Sie sie aus dem Modul importieren. Eine weitere Möglichkeit besteht darin, das gesamte Modul unter einem alternativen Namen zu importieren. Und in diesem Fall importieren Sie Modul ist das, was Sie möchten, dass der andere Name sein. Eine gemeinsame wäre, Pandas als pd zu importieren, daher nicht den ganzen Weg heraus buchstabieren zu müssen. Wenn ein Modul einen wirklich langen Namen hat, verkürzen manche ihn gerne. Sie würden sagen, importieren mod a, mod S, und dann würden Sie ihm einen anderen Namen geben. Also nennen Sie es, sagen Sie mein Modul. Also, jetzt ist mein Modul hier und es hat einen, einen Hintern. Module können auch aus einer Funktion importiert werden. Lassen Sie mich Ihnen zeigen, wie das aussieht. In diesem letzten Beispiel erstellen Sie eine Funktion und ich werde Sie es Importer nennen lassen. Innerhalb der Funktion könnte man von MOD wichtig print_i sagen und dann das Drucken innerhalb davon verwenden. Also im Moment, MOD ist nicht hier und print_i ist nicht verfügbar. Aber wenn Sie Importer ausführen und diese Funktion aufrufen, importiert es das Drucken aus dem Modul mod und ruft es dann mit dem Argument hallo all auf. Als Nächstes sehen Sie sich die DIR-Funktion an. 122. Die Funktion von dir(): In diesem Video geht es um die DIR-Funktion. Nachdem Sie die verschiedenen Möglichkeiten gelernt haben, wie Sie ein Modul oder den Inhalt Ihres Moduls importieren können und wie sich dies auf den Aufruf dieser Objekte auswirkt. Vielleicht möchten Sie lernen, wie Sie die Definitionsnamen innerhalb eines Namespaces anzeigen . Und da kommt das DIR oder die Verzeichnisfunktion ins Spiel. Es ist eine eingebaute Funktion und es gibt eine Liste von definierten Namen in einem Namespace zurück. Wenn Sie ihm keine Argumente geben, wird eine alphabetisch sortierte Liste aller Namen erstellt , die sich derzeit in der lokalen Symboltabelle befinden. Werfen wir einen Blick auf das. Wenn DIR nur von alleine ausgeführt wird , werden diese Objekte angezeigt. Wenn Sie ein neues Objekt erstellen, erstellen Sie eine Liste mit dem Namen gewinnt. Und wenn Sie das DIR ausführen würden, sehen Sie jetzt, wann es ein Objekt gibt, das auch als lokale Symboltabelle verfügbar ist. Wenn Sie ein Klassennamenteam erstellen würden, ist es eine sehr einfache Klasse, die gerade passiert. Und Sie sollten das Objekt erstellen, sagen wir, X, das Teil des Klassenteams ist. Wenn Sie nun DIR eingeben, können Sie hier Team sehen, und dann können Sie die anderen Objekte, Winde und x sehen. Dies sind also die Objekte, die sich jetzt in der lokalen Symboltabelle befinden. Ihre Namen sind, lassen Sie uns das Modul MOD importieren und geben Sie DIR ein. Die einzelnen Objekte sind Teil dieses Moduls mod sind nicht Teil der lokalen Symboltabelle. Sie müssten zugegriffen werden, indem Sie mod Dante oder mon dot S mit Notation Syntax oder mod dot drucken. Wenn Sie jedoch einzelne Teams importieren würden, würden Sie lernen, wie Sie das letzte Mal ein Team importieren, das Sie nicht importieren können, wird eine Fehlermeldung angezeigt. Wenn Sie nun DIR Team eingeben , ist diese Klasse da und ein , dieses Objekt ist da, können Sie ein Objekt Y der Teamklasse erstellen. Es ist verfügbar. Und andere Möglichkeiten, die Sie importieren könnten, besteht darin, aber mit einem anderen Namen zu importieren. So könnten Sie S importieren und ihm die Namenszeichenfolge geben. Also jetzt würde DIR String aufbringen, ist jetzt auch in dieser lokalen Tabelle, S ist nicht, es ist nicht definiert, aber string ist. Bis jetzt haben Sie die eingebaute Funktion DIR ohne Argument verwendet. Was ist, wenn du ihm einen Streit gibst? Nun, eine der Möglichkeiten, wie Sie es verwenden können, besteht darin ihm den Namen des inneren Moduls als Argument zu geben. In diesem Fall listet die DIR-Funktion dann alle Namen definieren innerhalb dieses Moduls auf. Wenn Sie Mod selbst importieren, können Sie es hier sehen, aber Sie können nicht die Namen der Objekte sehen, die beim Importieren von Mod importiert wurden. Diese befinden sich in einer eigenen Symboltabelle. Um diese anzuzeigen, geben Sie DIR offene und schließende Klammern ein. Und dann als Argument, setzen Sie es in mod. Es hat eine eigene Teamklasse und signiert es die String-Funktion, eine Funktion print_i und die Zeichenfolge S zusammen mit ihrem eigenen Namen. Ich werde dir im nächsten Video ein bisschen mehr über den Namen zeigen. Und das letzte, was wir diskutiert haben, war die Verwendung eines Platzhalters für Mod-Import Asterix, Was bedeutet das in das Verzeichnis? Nun, es setzt alle Objekte und so gibt es Team Mod. Das Modul ist immer noch vorhanden, wenn Sie es importieren, es vorher. Aber print_i und S und a sind jetzt alle in der lokalen Symboltabelle. Im nächsten Video erfahren Sie mehr über die Ausführung eines Moduls als Skript. 123. Ein Modul führen: In diesem Video erfahren Sie mehr über die Ausführung eines Moduls als Skript. Ist ein Modul auch ein Python -Skript? Nun, ja, jede Punkt-Py-Datei, die ein Modul enthält, ist im Wesentlichen auch ein Python -Skript. Lassen Sie mich, dass Sie sich das ansehen. Wenn wir den Code für Mod DOD PY öffnen würden, wie Sie sehen können, ist es sehr einfach. Was wäre, wenn Sie modifizierte pi ausführen würden, ist ein Skript. Ist es sicher möglich, solange Sie sich im selben Verzeichnis befinden, aber es geht nur darum, Objekte zu finden und dann macht es nichts mit ihnen? Wenn Sie es nun ändern könnten, könnten Sie einen Lauf print_i als Aufdruck drucken, sogar X als ein klassisches Objekt definieren und dann x ausdrucken. Ich empfange also, es sollte ein bisschen interessanter sein. Okay, führen Sie es aus. Es druckte also die Zeichenfolge, druckte die Liste aus, zeigte das Argument für print_i. Und dann zeigt es, dass, wenn dies ausgeführt wird, der Name des Moduls Haupt- und Classy Objekt ist. Wie sieht das aus, wenn Sie es importieren? Starten Sie jetzt die Python -Shell. Wenn Sie den Import MOND ausführen würden, was wird dann passieren? Es wird den ganzen Code ausführen. Eine Notiz, die Sie hier vielleicht bemerken, dass es verwendet wurde, um diese Haupt zu speichern. Jetzt sagt es mod und es gibt es aus. Nun, das ist wahrscheinlich nicht das, was Sie wollen. Sie möchten wahrscheinlich, wenn Sie Modell und pi für ausführen, um die Ausgabe anzuzeigen. Aber wenn Sie Mod importieren, möchten Sie möglicherweise nicht, dass diese Ausgabe stattfindet. Möglicherweise möchten Sie in der Lage sein, die Ausgabe für Testzwecke anzuzeigen, aber Sie möchten möglicherweise nicht jedes Mal, wenn Sie es importieren. Es wäre viel besser, wenn die Ausgabe optional wäre. Also gibt es etwas zu helfen. Gibt es etwas, das Sie tun können, wenn Sie nicht möchten , dass dieses Modul LPA generiert, wenn Sie es einfach importieren? Es gab ein Werkzeug, das dabei helfen kann. Es verwendet, was eine Variable genannt wird. Do unter Variablen sind die Variablen, die Unterstriche vor ihren Namen verdoppeln. In diesem Fall ist die Gender Variable tatsächlich ein Name. Name wird automatisch auf den Namen des Moduls gesetzt, wenn es importiert wird. Das unterscheidet sich von dem, wenn ein Python -Skript als eigenständiges Skript ausgeführt wird. In diesem Fall wird name auf die Zeichenfolge von main gesetzt. Also, wie kannst du das benutzen? Ich werde hier verlassen. Geh zurück zu meinem Dot Pi. Und ich werde diesen Code ein wenig ändern, kurz bevor all das beginnt. Erstellen Sie eine if-Anweisung. In der if-Anweisung werden Sie diese Variable verwenden, die unter Variable des Namens. Also, wenn dieser Name gleich Domäne ist, was passiert ist, wenn Sie das Skript selbst ausführen nicht importieren. Dann gehen Sie weiter und machen Sie all diese Aktivitäten. Ich lasse Sie alle Informationen über. Also nur, wenn der Name main ist. Also dieses Mal, wenn Sie math.pi ausführen würden und Sie sehen können, dass es von selbst ausgeführt wird. Der Name ist „main“. Und wenn Sie Mod importieren, tut es nicht, was ziemlich ordentlich ist. Also wieder, wir gehen zurück zu DIR und hier ist Mod importiert, richtig? Aber wie lautet der aktuelle Name? Nun, was läuft hier als Hauptsitzung? Wenn du sagen würdest, wie lautet der Mod-Name? Nun, Mod Name ist MOD. Wenn eine Datei jedoch als eigenständiges Skript ausgeführt wird, wird der Name auf die Zeichenfolge Maine gesetzt. Und so können Sie diesen Test verwenden. Ziemlich ordentlich. Ein Grund, warum Sie das Modul ausführen möchten, ist ein eigenständiges Skript, um den Inhalt des Moduls zu testen. Dann geht es in diesem nächsten Beispiel darum, eine neue Datei zu erstellen. Nenn es Fact Dot Py. Und in der Tat DOD pi, werden Sie eine ziemlich einfache Funktion definieren, die eine faktorielle ist und es einfach wieder Tatsache nennen. Sie können dieselbe bedingte Anweisung einrichten. Wenn der aktuelle Name gleich dem String main ist, wissen Sie, dass er als eigenständiges Skript ausgeführt wird. Sie importieren ein anderes Modul, das CIS oder Systemmodul, und Sie werden ein Werkzeug namens ARG v verwenden, dann können Sie Befehlszeilenargumente verwenden. Um einige Tests durchführen zu können. Sie werden eine andere if-Anweisung einrichten. Und hier ist es auf der Suche nach seinem optionalen Argument , das Sie hinzufügen können, wenn Sie den Code als Skript ausführen. Dann wird es die Ausgabe dieser Faktenfunktion drucken, nachdem dieses Argument in eine ganze Zahl aus einer Zeichenfolge konvertiert wurde. Speichern Sie diese Datei und testen Sie, ob Sie Fakten importieren können, gehen Sie vor und starten Sie eine neue Shell-Sitzung. So Faktoren verfügbar, und es dauert ein Argument des Endes. Sagen wir mal, was ist die Factorial von fünf? Das zeigt also, dass die Tatsache als Modul funktioniert. Im nächsten Video erforschen Sie das Neuladen eines Moduls. 124. Ein Modul neu laden: In diesem Video zeige ich Ihnen, wie Sie ein Modul bis jetzt neu laden, Sie können einfach ein Modul einmal importieren, auch wenn Sie es versuchen würden, ein Modul wird nur einmal pro Interpretersitzung geladen. Und das wird gut funktionieren für Funktionen in Klassendefinitionen und das Importieren all dieser Objekte anfänglich. Aber manchmal können Module auch ausführbare Anweisungen enthalten. Normalerweise sind die ausführbaren Anweisungen nur für die Initialisierung, und es macht Sinn, dass diese Anweisungen nur beim ersten Importieren des Moduls ausgeführt werden . Das normalerweise in Ordnung, lass mich dir das ansehen. Gehen Sie weiter und öffnen Sie math.pi erneut. Und im Inneren werde ich Sie dazu bringen, das zu klären, wenn der Name gleich Haupt ist. Halten Sie einfach eine einfache Druckaussage für den Druck von AI heraus. In der Tat, ein wenig zu modifizieren und einen F String zu verwenden. Und das kann zeigen, dass jedes Mal, wenn dieses Modul importiert wird, es das ausdrucken würde, richtig? Also speichern Sie diese zusätzliche Zeile. Ok, hier oben im Terminal. Was ist passiert, wenn ich mod importiere? Nun, Sie können es hier sehen. Anfangs, als es Mod importierte, ging es voran und tat die Druckanweisung dort mit der F-Stärke. Und hier drinnen steht ein Mod Dante zur Verfügung. Was nun, wenn Sie Mod wieder in derselben Sitzung importieren würden? Nichts passiert, ist Montane hier stillgelegt? Ja, in der Tat, alle Objekte sind verfügbar. Warum sollte es diesen Code nicht erneut ausführen? Will, das ist die Sache. Es wird es nur einmal importieren und es muss nicht erneut importiert werden. Also ist es eine Art Effizienz-Sache. Nun, was ist, wenn Sie das neu laden müssen? Ist es möglich, ein Modul neu zu laden? Wenn du es wirklich musstest? Hier gibt es zwei Möglichkeiten. Zum einen können Sie den Dolmetscher neu starten und das haben Sie mehrmals praktiziert. Oder es gibt ein Modul, das Sie namens lib importieren können, und das enthält eine Funktion namens reload. Lassen Sie mich Ihnen zeigen, wie das aussieht. Manchmal möchten Sie dies möglicherweise neu laden, besonders wenn Sie den Code geändert haben und den Interpreter nicht neu starten möchten. Wie vielleicht haben Sie dies ein wenig geändert und Sie speichern, und jetzt möchten Sie Mod importieren. Diese Objekte sind immer noch da und der Import von Mod hat nichts ausgedruckt. Auch wenn Sie Änderungen an Ihrem Modul vornehmen, müssten Sie ein anderes Tool verwenden. Und dieses Tool ist etwas, das aus der Importlib importiert werden kann. Und innerhalb von Import-Bibs, eine Funktion namens Reload. Jetzt, da Sie es importiert haben, wird neu laden das Modul neu laden und es dann erneut zurückgeben. Also in diesem Fall wird das Modul Mod genannt zwei wichtige lib dot reload Maud würde tatsächlich hier neu geladen. Es wurde tatsächlich von der Quelle hier neu geladen. Jetzt haben Sie ein praktisches Tool, mit dem Sie Änderungen an Ihrem Modul vornehmen. Sie können sie mit dem Import live und dem funktionalen Laden neu laden. Im nächsten Video werden wir anfangen, Python Pakete zu erkunden. Danke fürs Zuschauen. 125. Wie du ein Paket in Python installieren: Hey alle, wieder in unserem Python Kurs hat Python eine Standardbibliothek von Paketen, aber viele Entwickler haben ihre Pakete geschrieben, um Pythons Fähigkeiten noch weiter zu erweitern. Es handelt sich um Pakete von Drittanbietern. Sie können sie mit Hilfe des Pipe-Werkzeugs von Python installieren. Dieses Tool lädt Python Pakete sicher herunter und installiert auf Ihrem Computer von HTTPS Semikolon, Schrägstrich vorne Schrägstrich PY PI.org, der Python Software Foundation Website. Stellen Sie sich vor, der Python Paketindex ist eine Art kostenlose App für Python-Module. Lassen Sie uns die Webseite starten. Dies sind die neuesten Updates von den Python Paketen oder Modulen, wenn Sie es vorziehen. Klicken Sie unter diesem Link auf Projekte durchsuchen und Sie können Tausende von Paketen sehen, die bereit sind, sie zu installieren. Gehen wir zurück zum PIP-Tool. Die ausführbare Datei für das PIP-Tool heißt pip unter Windows und PIP3 unter OS X und Linux. Unter Windows finden Sie Pip im folgenden Verzeichnis. Während Pip automatisch mit Python 3.9 und unter Windows sowie OSX installiert wird, müssen Sie es separat online x installieren. Jetzt zeige ich Ihnen, wie Sie Pakete von Python mit Pip installieren. Ich werde demonstrieren, wie Sie ein Paket deinstallieren, das nicht mehr benötigt wird. Wenn Sie Windows verwenden, können Sie Python Paket installieren, indem Sie die Windows-Eingabeaufforderung öffnen und dann diesen Befehl eingeben. Lassen Sie uns die Schritte eins nach 1 sehen. Geben Sie zuerst die Eingabeaufforderung in das Suchfeld des Fensters ein. der rechten Maustaste auf die Windows-Eingabeaufforderung, und wählen Sie dann Als Administrator ausführen aus. die Eingabeaufforderung als Administrator ausführen, vermeiden Sie alle Berechtigungsprobleme in der Eingabeaufforderung Typ CD Backslash, da dieser Befehl sicherstellt, dass Ihr Startpunkt nur den Laufwerknamen hat. Drücken Sie die Eingabetaste Jetzt sehen Sie den Laufwerknamen von c, suchen Sie Ihren Python Pfad. Der Skript-Ordner befindet sich im Python Anwendungsordner, in dem Sie Python ursprünglich installiert haben. In meinem Fall, wenn ich Windows Explorer öffne, ist der Python Pfad dieser. Wenn ich also mit der rechten Maustaste klicke, kann ich diese Adresse als Text kopieren. nun in der Eingabeaufforderung cd gefolgt von Ihrem Python Pfad ein, ich kann die Adresse einfügen würde plus V steuern, drücken Sie die Eingabetaste. Geben Sie nun den pip install Befehl ein, um Ihr Python Paket zu installieren. Da wir in unserem Fall das Pandas-Paket installieren möchten. Geben Sie dann den folgenden Befehl in die Eingabeaufforderung ein. Schließlich drücken Sie die Eingabetaste und Sie werden feststellen, dass das Paket hier, es ist Panda, installiert wird. Sie können schnell überprüfen, ob Pankaj erfolgreich in Python installiert wurde, indem den Python-Leerlauf öffnen und dann den Befehl importieren pandas ausführen. Wenn keine Fehler auftreten, nachdem Sie F5 drücken, um den Importbefehl auszuführen, dann wurde das Paket erfolgreich installiert , um ein Paket mit Pip zu deinstallieren, geben Sie einfach die folgenden Befehle in die Eingabeaufforderung ein. Vergessen Sie nicht, den Python Pfad festzulegen, bevor Sie diesen Befehl eingeben. Geben Sie schließlich y ein und drücken Sie dann die Eingabetaste, um mit dem Entfernen des Pakets fortzufahren. Danke fürs Zuschauen. 126. Python-Pakete: Bisher hatten Sie nur ein einziges Modul zu importieren. Aber was passiert, ist, dass Sie beginnen, eine viel größere Anwendung zu erstellen, das ist, wo Python Pakete kommen können wenn Sie versuchen, eine wachsende Anzahl von Modulen zu verfolgen. Das Erstellen eines Pakets ist in der Regel die Lösung. Pakete erlauben eine hierarchische Struktur a des Modulnamespace, wieder mit Punktnotation. Hier ist also ein Beispiel für Paketstruktur und Sie werden damit in einem Moment spielen. Auf der obersten Ebene haben Sie wieder ein Verzeichnis, und sagen wir, dass das Verzeichnis pk GY Paket heißt. Und darin enthält es mod E1 dot pi, und dann hat es ein zweites Modul, mod zwei dot py. Nun befinden sich beide Modelle in der Verzeichnishierarchie des Pakets. Nun, wie importiert man sie und arbeitet mit diesen Modulen? Lassen Sie mich Sie innerhalb des Python Verzeichnisses üben. Ich habe bereits ein neues Verzeichnis erstellt, pk G. Also hier ist das Verzeichnis pk G und Incentive in Ich habe zwei Module erstellt, Modus eins und Modus zwei. Es öffnet diese beiden Dateien. So wird Modus eins eine Funktion haben, die Ladedaten genannt wird. Die Ladedaten, wenn sie aufgerufen werden, werden eine Textzeile über das Modul ausdrucken. Es hat auch eine Klasse. Diese Klasse wird die Kundenklasse sein. Mod zwei wird eine Funktion mit dem Namen Clean Data-Modul haben, haben auch eine Klasse. Diese Klasse wird die Standortklasse sein. Großartig. Warum sind die Möglichkeiten, Pakete oder Module aus Paketen zu importieren? Nun, Sie können die Punktnotation verwenden. In der Tat könnten Sie beide gleichzeitig importieren. Und Sie könnten ein Objekt erstellen und x wird ein Ort sein , der den Punkt markiert, wenn Sie so wollen. Großartig. Also x ist das Standortobjekt von mod zwei aus dem Paket PKA G. Nice. Das ist also eine Möglichkeit, sie einfach zu importieren. Eine andere Möglichkeit wäre, einzelne Elemente zu importieren. Also, jetzt innerhalb von hier, Ladedaten sind in der lokalen SymbolTable und sind verfügbar und Sie können sehen, wie es läuft. So könnten Sie wieder einzelne Elemente aus den einzelnen Modulen mittels Punktnotation aus dem Paket importieren . Oder Sie könnten die alternative Namenstechnik verwenden. Nehmen wir an, Sie möchten diese Klassifizierung importieren. Aber anstatt einen Standort aufzurufen, möchten Sie ihn primär nennen. Sie können nun ein neues Objekt mit dieser Klasse erstellen. Also jetzt y ist ein lokales Objekt. Auch hier verwendet es den Namen, den Sie ihm einen Primärnamen gegeben haben. Eine andere Möglichkeit, die Sie gelernt haben, vorher zu importieren, war die Verwendung der von Anweisung. Sie können den Modus 1 nicht direkt importieren, wie Sie aus dieser Fehlermeldung sehen können. Aber von P KG könnten Sie Mod eins importieren. Anstatt also die Bezeichnung, zuerst Peak AGE zu haben, würden Sie dann einfach Mod eins verwenden. Und ähnlich, wenn Sie wollen, können Sie aus der EKG-Importanleihe T2 laden und dann würde es ihm einen anderen Namen geben. Sagen wir foo. Foo hat Daten gesäubert und wenn Sie möchten, könnten Sie diese Funktion aufrufen. Es ist gut, all diese Techniken wieder zu üben. Danke fürs Zuschauen. 127. Erstellen von Grafiken und Formen mit dem Turtle Modul von Python: Wie wir bereits gelernt haben, bietet ein Modul in Python nützlichen Code, der von einem anderen Programm verwendet werden kann. Python hat ein spezielles Modul namens Turtle, mit dem wir lernen können , wie Computer Bilder auf einem Bildschirm zeichnen. Das Schildkrötenmodul als eine Möglichkeit der Programmierung von Vektorgrafiken, Zeichnen mit einfachen Linien, Punkten und Kurven. Zuerst, um die Schildkröte zu verwenden, werden wir das Schildkrötenmodul importieren, verwendet den Code. wir nun das Schildkrötenmodul importiert haben, müssen wir eine Leinwand erstellen, einen leeren Raum zum Zeichnen wie eine Künstlerleinwand. Dazu rufen wir den Stift aus dem Schildkrötenmodul auf, das automatisch eine Leinwand erstellt. Geben Sie dies in die Python -Shell ein. Sie sollten ein leeres Feld oder die Leinwand mit einem Pfeil in der Mitte sehen. Der Pfeil in der Mitte des Bildschirms ist die Schildkröte. Natürlich ist es nicht sehr Turtle Lake. Sie senden Anweisungen an die Schildkröte mit Funktionen , die für die soeben erstellte Variable verfügbar sind, ähnlich wie bei der Verwendung der Stiftfunktion im Turtle-Modul. Zum Beispiel weist die Vorwärts-Anweisung der Schildkröte an, sich vorwärts zu bewegen, der Schildkröte mitzuteilen, 50 Pixel voranzubringen, geben Sie den folgenden Befehl ein. Jetzt sagen wir der Schildkröte, sie soll sich mit dem folgenden Befehl um 90 Grad drehen. Die Schildkröte links 90 Befehl zeigt den Pfeil nach oben. Jetzt zeichnen wir ein Quadrat und den folgenden Code auf die Zeilen, die Sie bereits eingegeben haben. Um die Leinwand zu löschen, Leinwand und setzt die Schildkröte zurück an ihre Ausgangsposition. Sie können auch Clear verwenden, die nur den Bildschirm löscht und die Schildkröte verlässt, wo sie ist. Wir können unsere Schildkröte auch nach rechts drehen oder rückwärts bewegen. Wir können bis verwenden, um den Stift von der Seite zu heben. Mit anderen Worten, um der Schildkröte zu sagen, dass sie mit dem Trocknen beginnen und nach unten ziehen soll. Diese Funktionen werden auf die gleiche Weise geschrieben wie die anderen, die wir verwendet haben. Lassen Sie uns versuchen, eine andere Zeichnung mit einigen dieser Befehle. Diesmal lassen wir die Schildkröte zwei Linien zeichnen. Zuerst bewegen wir die Schildkröte nach hinten 100 Pixel mit T rückwärts 100, und dann verwenden t up, um den Stift aufzunehmen und das Zeichnen zu stoppen. Dann mit Befehl t rechts 90 drehen wir die Schildkröte nach rechts um 90 Grad, um nach unten zum unteren Rand des Bildschirms zu zeigen. Mit t vorwärts 20 bewegen wir uns 20 Pixel vorwärts. Nichts wird wegen der Verwendung des Befehls up in der dritten Zeile gezeichnet. Wir drehen die Schildkröte um 90 Grad nach rechts mit T links 90. Und dann sagen wir der Schildkröte, sie soll den Stift wieder runterlegen und es erneut versuchen. Schließlich zeichnen wir eine Linie vorwärts parallel zur ersten Linie, die wir mit t nach vorne 100 gezeichnet haben, und wir haben die beiden parallelen Linien gezeichnet. Außerdem könnten Sie eine for-Schleife verwenden, um ein Quadrat wie dieses zu erstellen. Jetzt mit ein paar einfachen Änderungen an unserer Schleife, können wir schön mit dem ähnlichen Code erstellen , können wir verschiedene geformte von einem Grundquadrat zu einem Spiralstern erstellen. Wie Sie sehen können, indem Sie for-Schleifen verwenden, haben wir es viel einfacher gemacht, diese Formen zu zeichnen. Versuchen wir nun, ein gefülltes Quadrat zu zeichnen, aber zuerst reinigen Sie die Leinwand, um das gefüllte Quadrat zu trocknen. Zuerst müssen wir eine quadratische Funktion definieren, die ein Quadrat zeichnet. Beginnen Sie mit dem Füllen. Testen Sie Ihre Funktion, indem Sie sie mit Größe 50 und dann n Füllung aufrufen. Ich hoffe, Sie lernen, wie Sie das Schildkrötenmodul verwenden, um ein paar grundlegende geometrische Formen mit Schleifen zu zeichnen , um zu steuern, was die Schildkröte auf dem Bildschirm macht. Wenn Sie Fragen haben, lassen Sie es mich wissen. 128. Python geöffnet, zu lesen und zu schreiben in eine Datei: Hallo und willkommen zu dieser Video-Tutorial-Serie über die Arbeit mit Dateien und Python. In diesem Abschnitt werden Sie so ziemlich alles lernen, was Sie jemals über eine grundlegende Dateioperationen in Python wissen könnten . Und meine grundlegenden Dateioperationen, ich meine das Erstellen, Löschen von Dateien und Verzeichnissen, Verschieben, Kopieren, Umbenennen , Arbeiten mit Archiven, Arbeiten mit temporären Dateien, Durchlaufen von Verzeichnissen Bäume und Abrufen von Dateieigenschaften. Diese Liste geht weiter und weiter, aber so ziemlich alles hier werde ich abdecken und sogar einige Dinge, die nicht ganz auf dieser Liste sind. Wenn Sie in Ihrem eigenen Terminal folgen möchten, würde ich Ihnen empfehlen, einen Blick auf die Ressourcendateien zu werfen, die ich hinzugefügt habe , da das alle diese Beispielverzeichnisse enthält, die ich in diesem Abschnitt durchmache organisiert von weniger als, könnte es wirklich bequem für Sie sein. Also im Allgemeinen in jeder Lektion werde ich die Lektion vorstellen, einige der Funktionen vorgestellt, die ich verwenden werde. Und dann zeige ich Ihnen ein Beispielverzeichnis und Sie sollten es sich an Ihrem eigenen Terminal ansehen , damit Sie folgen können. Alles klar, springen wir rein. In dieser Lektion werde ich Pythons mit Offenheit Muster abdecken, sonst als Context-Manager-Muster bekannt ist, was meiner Meinung nach das wichtigste grundlegende Muster für die Arbeit mit Dateien und Python ist, weil es Ihnen erlaubt, aus vorhandenen Dateien in Ihrem Dateisystem. Um die als Muster geöffnete Breite zu verstehen, müssen Sie zuerst die offene Funktion verstehen, die wirklich ziemlich einfach ist. Es nimmt Dateiname und einen Modus, und es öffnet den angegebenen Dateinamen aus dem aktuellen Verzeichnis, es sei denn, in dem Modus, den Sie übergeben, anders angegeben. Und wenn diese Datei geöffnet ist , können Sie Operationen in dieser Datei ausführen oder sie übergeben, um daraus zu lesen. Also die grundlegenden Datei-Modi, und es gibt viele mehr. Aber das sind die drei, die ich Ihnen zeigen werde, um mit unserem Schreibmodus w zu beginnen , der den vorhandenen Dateiinhalt löscht, nicht existiert und Ihnen erlaubt, die Datei zu schreiben. Es gibt roten Modus, r Modus, der Ihnen einen nur Lesezugriff auf den Inhalt der Dateien gibt. Und wir werden einen Fehler werfen, wenn die Datei noch nicht existiert. Und dann gibt es den Anfügemodus a, der an das Ende der Datei schreibt, damit der vorhandene Dateiinhalt nicht gelöscht wird. Zonen sind also die drei grundlegenden Dateimodi die im Rest dieser Lektion überhaupt untersucht werden. Also lasst uns zur Python -Shell gehen. Also, was ich tun kann, ist etwas wie test.txt als Dateiname zu sagen. Und dann öffne ich es im Schreibmodus, damit ich darauf schreiben kann. Und so wird es erstellt, weil test.txt noch nicht existiert. Und dann muss ich sagen, ist so mit offen wie und dann gebe ich diesem einen Namen. Normalerweise finde ich es bequem, etwas wie Schreibunterstrich Datei zu sagen , so dass ich mich erinnere, was genau ich in diesem Fall zwei schreibe. Dann kann ich so etwas wie den richtigen Aktenpunkt rechts sagen. Oder ich kann einfach schreiben, was ich schreiben möchte. Ich kann so etwas wie hallo sagen, das ist eine Akte. Drücken Sie die Eingabetaste und Schreibfunktion gibt die Anzahl der hier geschriebenen Zeichen zurück. Schauen wir uns Pythons Hauptverzeichnis an. Kannst du diese Datei sehen? Es ist hier, test.txt. Sie können diese Datei überprüfen, indem Sie mit geöffneter test.txt im Lesemodus als Lesedatei sagen. Und dann kann ich einfach sagen, print, readFile dot read, und nicht lesen Funktion gibt nur den gesamten Inhalt dieser Datei zurück. Wie Sie sehen können, sind dies wirklich vorhandene Dateien und es hat den Inhalt. Hallo, ich bin eine Akte. Es gibt einen weiteren Modus, den ich dir gezeigt habe. Also werde ich Ihnen jetzt zeigen test.txt und Append-Modus ist die richtige Datei. Und dann kann ich die richtige Akte sagen, nicht überfallen. Und ich werde hier eine neue Zeile setzen, damit es eine neue Zeile in der Datei gibt. Und ich werde sagen, hier ist ein paar weitere Texte. Und dann mache ich genau das Gleiche, was ich gerade hier gemacht habe. Und wie Sie sehen können, habe ich es angehängt. Aber wenn ich es wieder im Schreibmodus öffnen und dann darauf schreiben würde, wurden alle Texte gelöscht. Lassen Sie uns die Datei aus Pythons Hauptverzeichnis überprüfen. Und wie Sie sehen können, dass dies in der Tat wahr ist, weil im Schreibmodus eigentlich nur Rechte über alles, was in der Datei bereits vorhanden ist, während der Stiftmodus nur an den vorhandenen Text anhängt. So können Sie auf verschiedene Arten eine Datei öffnen und lesen und in eine Datei schreiben. Eine letzte Sache, die ich in dieser Lektion behandeln möchte, ist, dass es empfehlenswert ist, die Datei nach dem Öffnen immer zu schließen den rechten Punkt zu schließen. Andernfalls wird diese FileResource offen mit Ihrem Betriebssystem wird interpretiert dass Sie diese Datei öffnen müssen und es wird Art von snarl up Ihre Betriebssystemressourcen. So können Sie die Breite offen als Muster verwenden , um Dateien zu erstellen und zu lesen und in Dateien zu schreiben. In der nächsten Lektion bespreche ich, wie Sie die Verzeichnisliste erhalten, wie Sie sich alle Dinge ansehen, die in Ihrem Verzeichnis befinden, die erstellt wurden. 129. Ein Verzeichnis auflisten, und die Attribute zu den Verzeichnissen erhalten: In dieser Lektion werde ich behandeln, wie man eine Verzeichnisliste erhält. Legen Sie einfach eine Liste aller Dinge, die in Ihrem aktuellen Verzeichnis oder in einem beliebigen Verzeichnis vorhanden sind, das Sie auswählen können. Und das ist wirklich wichtig, denn so ziemlich jede Aufgabe, die Sie in Python oder einer anderen Programmiersprache ausführen möchten , in der Sie mit Dateien arbeiten , müssen Sie dort etwas tun, wo Sie alle Dateien durchsuchen möchten Ihres aktuellen Verzeichnisses und machen Sie etwas mit ihnen. Hier sind einige grundlegende Verzeichnisauflistung Funktionen in dieser Serie, ich werde Ihnen oft ein paar verschiedene Möglichkeiten zeigen, die Aufgabe zu erledigen. Dann werde ich Ihnen zeigen, wie es geht. Bei allem, was gesagt wird, ist die erste Funktion hier die OS-Punktliste DIR, die einen Verzeichnisnamen einnimmt und dann eine Liste von Dateien und Unterverzeichnissen in diesem Verzeichnis als Zeichenfolge zurückgibt . Die etwas raffiniertere Alternative ist OS dot scan DIR, das anstelle einer Liste einen Iterator zurückgibt. Dieser Iterator besteht nicht aus Strings, sondern aus Dateiobjekten, die einige Eigenschaften für sie haben, wodurch sie ein wenig einfacher zu arbeiten wenn Sie sie tatsächlich als Dateien behandeln möchten. Und dann hat das Pfad-Live-Modul ein sehr ähnliches Paradigma zum Scannen von DIR, außer es funktioniert auf einem Pfadobjekt. Und ich zeige Ihnen, wie Sie ein Pfadobjekt initialisieren und damit arbeiten, in der Python Challenge ist die zweite. Mein Python Verzeichnis enthält ein paar Unterverzeichnisse und mehrere Dateien. Und jedes Unterverzeichnis hat ein paar verschiedene Dateien zu. Okay, lasst uns hier ein bisschen in den Code einsteigen. Das erste, was zu tun ist, um einige Importe in Gang zu bringen, OS zu importieren. Und dann werde ich auch den Pfad lib Importpfad sagen, nur damit ich alle meine Importe hier oben an einem Ort habe. Das erste, was Sie tun können, wenn Sie eine Verzeichnisliste erhalten möchten ist, dass Sie einfach OS dot list DIR sagen können. Und dann, wie Sie aus meiner praktischen Shell sehen können, nimmt es einen optionalen Pfadparameter ein. Wenn Sie den Pfad nicht übergeben, wird nur das aktuelle Verzeichnis verwendet. Es, wie Sie sehen können, wenn Sie sich von meinem Python Verzeichnis erinnern, hat es alle Dateien und Ordner. Aber wie Sie hier sehen können, sind all dies nur nackte Strings und ebenso die String-Liste. Das ist also nicht super flexibel. Wenn Sie tatsächlich Informationen darüber erhalten möchten, können Sie etwas sagen, wie vielleicht der OS-Pfad Datei ist und dann könnten Sie das in einer Datei oder was auch immer aufrufen. Aber Sie müssen alle Zirriculum Kunshan tun , um einige Informationen über diese Datei herauszufinden. Kannst du raten, warum es falsch ist? Es liegt daran, dass sie die Punkt-Py-Erweiterung nicht eingegeben haben. Versuchen wir es nochmal. Dies ist bei so etwas wie Scan DIR nicht der Fall. Sie können etwas sagen, wie für Name und OS nicht scannen DIR. Und das wird auch einen optionalen Pfadparameter benötigen. Sie können sagen, wenn Don ist Datei benannt. Und ich bin mir nicht sicher, warum das keinen Unterstrich hat und das hat einen Unterstrich. Ich wünschte, ich könnte Ihnen mehr darüber erzählen, warum das so ist, aber wer weiß? Damit Sie einfach direkt vom Objekt zugeschrieben werden können. Weil, wie Sie sehen können. Objekte sind DIR-Einträge und nicht nur einfache Zeichenfolgen. So haben die DLR-Einträge Informationen in ihnen, während die Strings, müssen Sie ein wenig mehr Arbeit als Programmierer tun, um zu lernen, dass die notwendigen Befehle tatsächlich diese Informationen über diese Dinge zu bekommen. Das ist hier etwas zu bemerken, ist, dass der OS dot scan DIR ein wenig objektorientierter ist, während OS dot list DIR ein wenig mehr wie ein traditionelles Linux Dateisystem funktioniert. Wir sind so ziemlich alles ist eine Zeichenfolge und Sie müssen nur die Arbeit auf eigene Faust machen, um die Informationen darüber herauszufinden. So Pfad gelebt nimmt eine ähnliche Psychologie, außer Sie müssen den Pfad als explizites Objekt erstellen. So DIR Pfad gleich Pfad. Und dann werde ich einfach den aktuellen Verzeichnispunktschrägstrich übergeben. Und dann können Sie genau das gleiche tun, was Sie mit OS dot scan DIR tun können. Es ist nur, dass es ITER DIR direkt auf dem Pfad aufruft. Dann ist es genau das Gleiche hier. Wie Sie sehen können, hat dieser Name ein bisschen eine andere Druckfunktion. Aber dieser Name ist immer noch ein Objekt, wo er ein wenig mehr Informationen hat als nur eine bloße Zeichenfolge. Das ist also relativ nützlich. Und all diese Dinge, die Sie auf jedem Weg verwenden können, den Sie mögen. Es ist nicht nur im aktuellen Verzeichnis. Das sind drei verschiedene Möglichkeiten, um ein Verzeichnis zu erhalten das das Betriebssystemmodul und das lib-Pfadmodul auflistet. Sie alle haben ihre Vor- und Nachteile. Os dot list DIR ist wirklich einfach und einfach. Os dot scan DIR und path lib dot path haben ein wenig mehr Nuance und Sie können ein wenig mehr Dinge mit ihnen tun. Aber Sie haben nicht unbedingt die gleiche Art von Leichtigkeit wie mit OS dot list DIR. Also alle Dinge zu beachten, jetzt, dass Sie eine Liste mit den Dateien im aktuellen Verzeichnis haben. Aber was passiert, wenn Sie tatsächlich die Attribute dieser Dateien erhalten möchten? Wie das letzte Mal, als sie geändert wurden oder wann sie erstellt wurden, oder ihre Größe oder ihre Berechtigungen oder so etwas. Es gibt drei verschiedene Optionen zum Abrufen von Dateiinformationen. Der erste ist immer dots stat , der einen Pfad als String annimmt und dann ein stat route Ergebnisobjekt zurückgibt , das eine Datei Daten enthält. Das stat-Ergebnisobjekt ist also etwas, das Sie auf Felder dieses Objekts zugreifen und die Dateidaten abrufen können. Dann liefern OS dot scan DIR und path lib dot path dot iter DIR diese Informationen mit den Objekten, die sie in ihren Iteratoren zurückgeben. Also werfen wir einen Blick in die Schale. Okay, Aktendaten. Wie bekommst du es? Nun, lasst uns das versuchen. Erster. Ich möchte nur den Inhalt dieses Verzeichnisses erhalten. Und wie Sie sehen können, gibt es viele Dateien zur Auswahl. Und die erste Methode, die ich in den Folien mit der OS dot stat-Funktion betrachte , die nur einen Dateipfad, Dateinamen annimmt und Ihnen ein OS dot stat Ergebnisobjekt gibt. Als Ergebnis haben Sie alle Arten von verschiedenen Dingen, Anzahl der Links zur Erstellung und Änderungszeit. Einige von ihnen unterscheiden sich sogar von System unter Windows, Linux, Mac, und einige von ihnen werden unterschiedliche Werte haben. Jetzt zeige ich Ihnen die zwei Möglichkeiten, wie ich diese Daten tatsächlich bekommen möchte. Ich könnte für OBJ und OS dot scan DIR im aktuellen Verzeichnis speichern. Und dann lassen Sie uns ein wenig mehr von einer informativen Ausgabe machen. Sagen wir mal, so etwas wie Mod-Zeit entspricht OBJ Darmstadt. Und so erhalten Sie die Statistiken für ein Scan-DIR-Objekt. Und dann kann ich Punkt STM Zeit sagen. Und jetzt können wir etwas Schönes sehen, wie f doppelte Anführungszeichen Datei OBJ Punkt Name wurde zuletzt geändert bei. Und dann könnte ich sagen, Zeit Punkt c Zeit der Mod Zeit. Und so sollte dies alles ein schönes lesbares Format geben. Es sagt Ihnen, jeden Dateinamen und die Zeit, die sie zuletzt geändert wurden, dann der Pfad lebte auf Pfad Option. Hier funktioniert fast genau auf die gleiche Weise, außer Sie müssen zuerst das Pfadobjekt erstellen , bevor Sie mit der Iteration beginnen können. Das sind also drei verschiedene Möglichkeiten, Statistiken aus Dateien mit Python zu erhalten. In der nächsten Lektion werde ich etwas behandeln, das ich noch nicht behandelt habe, nämlich das Erstellen von Verzeichnissen. 130. Erstellen und Löschen von Ordnungen: In dieser Lektion werde ich kommen oder wie man Verzeichnisse und sogar ganze Verzeichnisbäume erstellt. Wie üblich gibt es ein paar verschiedene Möglichkeiten, dies mit dem OS-Modul zu tun. Wenn Sie nur ein einzelnes Verzeichnis erstellen möchten, können Sie OS dot MKDIR make directory mit dem Verzeichnisnamen verwenden, wodurch ein einzelnes Unterverzeichnis mit einem angegebenen Namen erstellt wird. Wichtig zu beachten, dass dadurch kein Verzeichnis und Unterverzeichnisse erstellt werden. Und wenn Sie das brauchen, müssen Sie OS dot verwenden, DEA, IRS machen. Und dann können Sie einen vollständigen Pfadnamen mit mehreren Unterverzeichnissen übergeben und es wird den vollständigen Verzeichnisbaum nach Bedarf erstellen. Mit dem Modul path lib können Sie path list.pop dot MKDIR verwenden, das im Wesentlichen genauso funktioniert wie O S dot MKDIR, es auch keine vollständigen Verzeichnisbäume erstellt. In dieser Lektion werde ich wirklich jedes spezifische Beispielverzeichnis verwenden , weil ich nur Verzeichnisse erstellen werde, wie ich sie brauche. Lassen Sie uns direkt in die Python -Shell gehen. Okay, lassen Sie uns ein paar Verzeichnisse erstellen. Os erledigt. Mkdir ist der erste und einfachste Weg, dies zu tun. Es nimmt einen Pfadparameter und dann kann es auch einen Modusparameter und dann den DIR FDI-Parameter verwenden. Also, wenn ich ein Verzeichnis namens test erstellen möchte, ist das ziemlich einfach zu tun. Und dann kann ich die Liste DIR verwenden, um zu sehen, dass es erstellt wird. Nun, wenn ich etwas etwas etwas spezifischer machen möchte und ich etwas wie OS dot MKDIR sagen wollte, test2 slash Teilaufgaben. Dann werden Sie sehen, dass das tatsächlich nicht funktioniert, weil test2 noch nicht existiert. Subtests können also nicht von MKDIR erstellt werden. Wenn ich so etwas tun muss, kann ich OS dot verwenden, DEA, IRS machen , die dieses Verzeichnis machen wird, und dann wird es all diese machen. Es wird nur alles machen, was ich brauche, um zu diesem endgültigen Verzeichnis zu gelangen. Wie Sie sehen können, sind DIR und Test zwei dort drin. Dann, wenn ich die Liste DIR auf Test zwei aufrufe, dann können Sie sehen, dass es Subtests Ordner genau so hat, wie ich es brauchte. Also, das ist wirklich ziemlich einfach und genial. Der Grund, dass MKDIR auf diese Weise existiert und der Grund, dass es das Verhalten hat, besteht darin, wirklich ein Sicherheitsventil zu sein, ein Sicherheitsmechanismus, um sicherzustellen, dass Sie wirklich wissen, was mit Ihrem Dateisystem los ist. Machen Sie DEA IRS ist genial. Aber es kann auch zu unerwartetem Verhalten führen, wenn Sie derjenige im Verzeichnis sind und Sie eine ganze Kette von Unterverzeichnissen erstellen und dann an einem völlig unerwarteten Ort landen. Während MKDIR auf eine Art Fehler L gebaut ist, bevor dies geschieht. Damit du damit umgehen kannst. Etwas anderes zu beachten ist, dass beide eine Ausnahme auslösen , wenn Sie versuchen, ein existierendes Verzeichnis zu erstellen. Wenn ich sage OS dot MKDIR Test oder ein Westen nicht DEA IRS-Test machen, dann wirft Python mir eine Datei existiert Fehler, weil es versucht, etwas zu erstellen, das bereits existiert. Der Pfad lib dot path alternative, die auf diese Weise erreicht werden kann. Sie können dieses Problem vermeiden, wenn Sie versuchen, das zu tun. Also kannst du so etwas sagen. Ein neuer Pfad entspricht dem Pfadtest. Und dann können Sie einen neuen Pfad Punkt MKDIR sagen. Und Sie können den Parameter existent okay verwenden und diesen auf true setzen , wenn Sie nicht möchten, dass er einen Fehler auslöst, wenn er bereits existiert. Jetzt ist das Problem damit, natürlich, dass es einfach nichts tut, weil es kein Verzeichnis erstellt, weil es bereits existiert. Das ist definitiv etwas Wichtiges zu beachten, ist, dass selbst wenn Sie nicht möchten, dass dieser Fehler passiert, Sie wahrscheinlich immer noch winden sollten, um zu wissen, dass dort etwas passiert, denn sonst könnten Sie in Probleme, bei denen Sie denken, dass Sie etwas Neues erstellen, aber wirklich erstellen Sie etwas und es gibt bereits ein vorhandenes Verzeichnis. Dieses Verhalten können Sie also beseitigen, wenn Sie es brauchen, aber Sie möchten es vielleicht nicht jederzeit. Das sind also die verschiedenen Möglichkeiten, Verzeichnisse und Python zu erstellen. Und ich denke, es ist wirklich einfach und unkompliziert. Verwenden Sie path dot live MKDIR, wenn Sie mehr objektorientiertes Framework verwenden möchten, oder wenn Sie nur ein Verzeichnis gleichzeitig erstellen müssen, verwenden Sie OS dot MKDIR andernfalls. Und dann, wenn Sie einen vollständigen Verzeichnisbaum erstellen müssen, würden Unterverzeichnisse OS dot omega d IRS verwenden, wo Sie die übergeordneten Parameter des Pfades lib dot path, dot-dot, MKDIR Option verwenden können. Sehen wir uns nun an, wie Verzeichnisse funktionieren. Die führenden Verzeichnisse. Zum Löschen von Verzeichnissen können Sie OS dot ARM DIR verwenden, Verzeichnis entfernen, wo Sie den Verzeichnispfad übergeben und dann das einzelne Verzeichnis löschen, oder das ist, was die Funktion tut. Es löscht diese einzelnen Verzeichnisse. Wenn das Verzeichnis nicht leer ist, löst es einen Betriebssystemfehler aus, da es nicht möchte, dass Sie versehentlich vollständige Verzeichnisse löschen. Sie möchte sicherstellen, dass Sie sie gelöscht haben, bevor Sie sie löschen. Pfad lebte auf Pfad na.rm. Dir ist identisch, außer dass es wie gewohnt auf einem Pfadobjekt arbeitet. Erstellen Sie also zuerst den Pfad und rufen Sie dann seine Don RM DIR-Methode auf. Wenn Sie nicht leere Verzeichnisse oder eine ganze Verzeichnisstruktur löschen müssen, können Sie trotzdem Shuttle. Sie müssen den Shuttle importieren , der kurz für Shell Sie bis ist, und dann hat es eine RM-Baumfunktion, wo Sie das als Verzeichnispfad aufrufen können und es wird den gesamten Verzeichnisbaum löschen, der an diesem Pfad verwurzelt ist. Wenn Sie also einige Unterordner innerhalb dieses Verzeichnisses haben, die Sie aufrufen, werden diese alle zwei gelöscht, unabhängig davon, ob sie voll oder leer sind. Dies ist also eine Art der nuklearen Option, Verzeichnisse und Python zu löschen. Alles klar, lassen Sie uns einige Verzeichnisse löschen. Also zuerst zeige ich Ihnen das Dateisystem hier. Lassen Sie uns also einen ersten Versuch hier machen und nur sehen, was passiert, wenn Sie OS na.rm DIR auf Ordner 1 aufrufen . Und natürlich muss ich die Strings einfügen, weil es der Pfad sein muss , anstatt es gibt keine Variable namens Folder eins. Wie Sie sehen können, ein Betriebssystemfehler, da das Verzeichnis nicht leer ist. Denn wenn ich OS dot list DIR in Ordner 1 aufrufe, hat es natürlich Python Dateien darin. Das wird also nicht funktionieren. Wenn ich etwas mit OS dot RMD IR löschen möchte, muss ich wirklich schnell ein neues Verzeichnis erstellen, das alle Test aufrufen. Und dann muss ich eine Liste DIR machen, um Ihnen zu zeigen, dass es da drin ist. Test ist bereits vorhanden, so dass wir ein Verzeichnis mit dem Namen test1 erstellen. Also jetzt gibt es test1 Schrägstrich Verzeichnis, und dieses test1 Schrägstrich Verzeichnis ist tatsächlich leer, so dass es gelöscht werden kann. Dies mag wie eine unkonventionelle Funktion , die Sie nur mit diesen grundlegenden Dingen löschen können, Verzeichnisse, die leer sind. Aber wirklich ist es nur ein Sicherheitsmerkmal. Es möchte nicht, dass Sie Dinge löschen, wenn es nützliche Dateien in diesem Verzeichnis gibt. Ich will nicht, dass du sie führst, ohne wenigstens darüber nachzudenken, was drin ist. Jetzt kann ich jedoch OS dot RMD sehen. Und jetzt siehst du, dass es zurück ist, es ist wieder weg. Jetzt zeige ich Ihnen, wie Sie einen dieser nicht leeren Ordner tatsächlich löschen können. Für sie müssen Sie Shell Util, Shuttle importieren , und dann können Sie einfach sagen versucht, auf leeren Ordner zu löschen. Natürlich konnte ich das nicht. Lassen Sie uns ein weiteres Beispiel mit einem Testordner machen. Wieder das Gleiche. Jetzt werde ich einen nicht leeren Ordner wie Module und Pakete löschen. Und jetzt, wenn ich meine Liste DIR hier mache, ist der Modul- und Paketordner völlig verschwunden, obwohl er Inhalt darin hatte, richtig? Und das funktioniert sogar für Unterverzeichnisse. Dies ist wirklich die schwere Hitter-Option, die einfach alles löscht, ohne das zu tragen, was darin ist. Und das kann so nützlich sein, wenn Sie wissen , dass alles , was in Ihrem Ordner ist, Müll ist, dass Sie es löschen können. Aber wenn Sie das nicht wissen, sollten Sie wirklich vorsichtig sein, einige dieser anderen Funktionen zu verwenden, die Sie warnen, indem Sie einen Fehler werfen, wenn Sie versuchen, etwas zu löschen, das nützliche Dinge enthält. So können Sie Verzeichnisse in Python löschen. 131. Dateien löschen, bewegen und erneueren und erneueren: Jetzt, da Sie wissen, wie Sie Dateien zusammen mit ihren Attributen erstellen und auflisten, wäre es großartig, wenn Sie sie löschen könnten, wann immer Sie mit ihnen fertig waren. Und das wird natürlich das Thema dieser Lektion sein. Dateien werden gelöscht. Um Dateien zu löschen, haben Sie wie gewohnt ein paar Optionen, mit dem OS-Modul haben Sie tatsächlich zwei fast identische Funktionen. Immer nicht entfernen und OS Punkt auf Link, die beide den String-Dateipfad genommen und löschen Sie diese einzelne Datei, nicht ein Verzeichnis, sie erhöhen eine Datei nicht in der Datei gefunden nicht existiert. Und der Grund, dass die beiden identischen Funktionen mit unterschiedlichen Namen nur eine Frage der Kompatibilität mit verschiedenen Programmierparadigmen sind. Einige Leute in alten oder Art von Unix-Systemen verwenden gerne unlink als ihre bevorzugte Nomenklatur. Während einige Leute in verschiedenen Systemen verwenden entfernen. Es ist nur, um sicherzustellen, dass alle mit dem Pfadlib-Modul zufrieden sind. Sie haben auch eine Punkt-on-Link-Methode, aber dies ist eine Methode des Pfadobjekts. Wie üblich müssen Sie dieses Pfadobjekt initiieren, bevor Sie dot on link aufrufen können. Also das Beispielverzeichnis, das ich dann zum Löschen der Sache verwenden werde, die Dateien mit dem Tochterleadings-Verzeichnisabschnitt dieser Lektion gleich sein. Ich habe ein paar Unterordner mit Dateien darin, und dann habe ich nur ein paar Dateien mit dem Beispielverzeichnis der obersten Ebene. Okay, lassen Sie uns einen Blick darauf werfen, wie diese Datei in der Praxis funktioniert. Ich werde die OS-Punktliste DIR verwenden, um Ihnen zu zeigen, wo ich mich in meinem Dateisystem befinde. Ich habe ein paar Textdateien hier und füge ein paar Ordner hinzu, die ich Ihnen zeigen könnte völlig sicher zu schätzen, dass diese Ordner sind, was wir erwarten, in ihnen zu haben. Ein paar Python Dateien und ein paar andere Ordner haben einige Dinge in ihnen. Lassen Sie uns zuerst die Option zum Entfernen von OS dot hier ausprobieren. Ich rufe es einfach an. Und eine dieser Top-Level-Textdateien, nur zum Spaß, OS dot entfernen. Es gibt Ihnen keine bestimmte Ausgabe, aber vertrauen Sie darauf, dass es Arbeit ist. Und Sie können das überprüfen, indem Sie erneut die Liste DIR verwenden und Sie können sehen, test1 Punkt TXT ist weg. Das ist also ziemlich gut. Es funktioniert genauso wie erwartet. Und dann funktioniert O S dot on link genau auf die gleiche Weise. Ich werde dies auf Test 2.txt nennen. Und wie Sie sehen können, OS dot list DIR, beide dieser Textdateien sind weg. Alles, was ich noch habe, sind ein paar Ordner. Jetzt werde ich Ihnen ein wenig sagen, wie Sie Dateien und Verzeichnisse kopieren, verschieben und umbenennen. Es gibt mehrere nützliche Funktionen zum Kopieren und Verschieben von Dateien zum Kopieren. Es gibt zwei Möglichkeiten. Es gibt eigentlich drei Optionen mit dem Shuttle Shell-Dienstprogrammmodul, die ich importieren muss. Es gibt eine Kopie, die einen Quell- und einen Zieldateipfad einnimmt und die Datei aus den Quellpfaden in den Zielpfad kopiert. Die Quelldatei wird also noch existieren. Natürlich, Sie kopieren nur, Sie löschen nicht die erste Datei. Das Wichtigste beim Kopieren ist jedoch, dass es nur die Datei kopiert, den Inhalt der Datei, aber nicht die Metadaten. So werden zum Beispiel Dinge wie die letzte Modifikation Zeit und so weiter nicht erhalten bleiben. Das wird nur auf die Basiswerte zurückgesetzt. Wenn Sie die Metadaten ausführen müssen, können Sie trotzdem den tionalen Punkt verwenden. Copy to function, die identische Syntax hat. Es kopiert nur die Metadaten als auch. Das sind also unterschiedliche Anwendungsfälle. Dann haben Sie shuttled.com P3, die vollständige Verzeichnisbäume kopiert. Dies ist, was Sie verwenden sollten, wenn Sie Verzeichnisse in irgendeiner Kapazität kopieren möchten, aber versuchen Sie, dies im Auge zu behalten, während der gesamte Baum auf SRC DIR verwurzelt ist. Und dann wird es in das Zielverzeichnis für die Umbenennung kopiert. Oder weil wirklich die beiden im Wesentlichen äquivalent sind, haben Sie zwei Optionen. Eins mit dem Shuttle-Modul und eins mit dem Betriebssystem. Shuttle Dot bewegen. Es nimmt wieder eine Quelle und einen Zielparameter. Und es verschiebt die Datei oder das Verzeichnis von SRC oder Quelle nach dst, dem Ziel. Dann immer umbenennen wirklich tut im Wesentlichen das Gleiche, weil das Bewegen und Umbenennen wirklich zwei Seiten der gleichen Münze sind, sozusagen. Es benennt die Datei oder das Verzeichnis mit dem alten und dem neuen Namen um. Ich werde schreiben, Ich habe OS importiert und Shuttle soll bereits util. Das erste, was zu tun ist, ist, die Funktionalität der Shuttle-Punkt-Kopie zu zeigen. Ich kopiere einfach Test 1.2x d in eine neue Datei und rufe Backup-Tags auf. Und ich nenne es Backup 1.2x t Nur um sicherzustellen , dass Sie wissen, dass es ein Backup von Test1 TXT ist. Wie Sie sehen können, gibt Shuttle DOD Copy den Pfad der neu kopierten Datei Back-up ein TXT. Und wenn ich sage ls dot list DIR, Sie können sehen, dass es jetzt einen Test 1.2x T und ein Backup 1.2x T gibt. Also diese ursprünglichen Dateien erhalten und die neue Sicherung wird auch erstellt und diese Dateien werden genau der gleiche Inhalt sein. Wenn Sie nun ein Directory Shuttle kopieren müssen, funktioniert die Punktkopie nicht. Wenn ich versuche, den Ordner eins in den neuen Ordner 1 zu kopieren, funktioniert das nicht, da Ordner One ein Verzeichnis ist. Dafür müssen Sie den shuttle.com Baum verwenden, der genau das Richtige tut. Es wird den Ordner eins in den neuen Ordner 1 kopieren. Das kann ich mir mal ansehen. Da ist es, Ordner eins, Neuer Ordner, einer perfekt kopiert. Ich kann den Inhalt von Ordner 1 in der Liste der Inhalte der neuen Version auflisten, nur um sicherzustellen, dass Sie sehen können, dass sie tatsächlich identisch sind. Also dieselbe Datei, dasselbe alles, alles alles, alles gut kopiert. Seien Sie vorsichtig damit, weil es den gesamten Verzeichnisbaum dort kopiert und er Unterverzeichnisse, diese werden auch kopiert. Manchmal ist das vielleicht nicht genau das, was du willst. Vielleicht wollen Sie ein bisschen mehr Granularität. Und wenn das der Fall ist, müssen Sie ein wenig mehr Arbeit machen und diese selbst durch die Verzeichnisse iterieren. Lassen Sie uns nun über das Verschieben und Umbenennen von Dateien sprechen , weil diese wirklich die gleiche Operation sind. Also Ihre Opsins sind Shuttled dot move, und lassen Sie uns versuchen, test.txt in den Ordner einen Schrägstrich test.txt zu verschieben. Wie Sie sehen können, ist test.txt aus dem Verzeichnis der obersten Ebene verschwunden, aber es wird im Ordner eins angezeigt. Das ist also genau so, wie Sie es erwarten könnten. Jetzt funktioniert OS dot umbenennen fast genau die gleiche Weise, wenn Sie versuchen, Backup 2.txt zu verschieben, was eine Datei ist, die nicht in der Fehlermeldung existiert, wird auf unserem Bildschirm angezeigt. Also eine Menge Sachen da, die alles gut funktioniert. Und beide Funktionen funktionieren auch in Verzeichnissen. So können Sie Dateien und Verzeichnisse in Python kopieren, umbenennen und verschieben. 132. Milestone ein interaktives Math: Willkommen alle in diesem Meilenstein-Projektbereich des Kurses. Wir werden diesen Abschnitt beginnen, indem wir ein paar Aufwärmprojektübungen durchlaufen. Wir haben jetzt genug grundlegende Programmierung in Python abgedeckt, fangen Sie an, unser erstes vollständiges Programm zu programmieren. In diesem Abschnitt werden wir ein Programm programmieren, das unser Verständnis der mathematischen Reihenfolge der Operationen und der Regeln einer arithmetischen Berechnungtestet der mathematischen Reihenfolge der Operationen und der Regeln einer arithmetischen Berechnung Unser Programm sendet zufällig eine arithmetische Frage für uns zu beantworten. Wenn wir die Antwort falsch bekommen, zeigt das Programm die richtige Antwort an und fragt, ob wir eine neue Frage wollen Wenn wir es richtig bekommen, wird das Programm fragen, ob wir eine neue Frage wollen. Darüber hinaus wird das Programm den Überblick über unsere Partituren behalten und die Partituren in einer externen Textdatei speichern. Nach jeder Frage können wir das Programm beenden. Wir werden Dateien für unser Programm schreiben. Wir werden sie Teil eins und Teil zwei nennen. Die erste Datei oder Teil eins, wenn Sie es vorziehen, ist MathFunctions dot pi. Und die zweite Datei, oder der zweite Teil ist mathematische Spiel dot py. Ich habe das Programm in kleine Übungen aufgeschlüsselt , damit Sie versuchen können, das Programm selbst zu programmieren. Probieren Sie die Übungen aus, bevor Sie sich auf die Antworten beziehen. Antworten finden Sie in Ihren Ressourcendateien. Denken Sie daran, die Python -Syntax zu lernen ist einfach aber langweilig. Problemlösung ist, wo der Spaß liegt, wenn Sie Schwierigkeiten haben , wenn Sie diese Übungen machen, versuchen Sie es härter. Hier ist die Belohnung die größte. Wenn Sie bereit sind, die Punkte zwischen dem zu verbinden, was Sie bereits bei der Erstellung eines interaktiven Programms gelernt haben. Lasst uns eintauchen. 133. Teil 1 Importieren und die Ergebnisse der Benutzerbewertung: Um zu beginnen, lassen Sie uns die Datei mathematische Funktionen dot pi erstellen. Wir werden drei Funktionen in dieser Datei definieren. Der erste Schritt besteht darin, zwei Module zu importieren, das Zufallsmodul und das Betriebssystemmodul. Ich möchte die Verwendung des zufälligen Moduls in Python beschreiben, das zufällige Modul bietet Zugriff auf Funktionen, die viele Operationen unterstützen. Vielleicht ist das Interessanteste, dass es Ihnen erlaubt, Zufallszahlen zu generieren, wird die Randint-Funktion für das Zufallsmodul verwenden. Die Zufallsfunktion erzeugt eine zufällige Ganzzahl innerhalb des von uns zur Verfügung gestellten Bereichs. Wir werden sie verwenden, um Zahlen für unsere Fragen später lief in akzeptiert zwei Parameter zu generieren , eine niedrigste und höchste Zahl. Das OS-Modul in Python bietet Funktionen zum Erstellen und Entfernen eines Verzeichnisses oder Ordners, das Abrufen des Inhalts, Ändern der Identifizierung des aktuellen Verzeichnisses, et cetera, aus dem OS-Modul wird mit den Funktionen Entfernen und Umbenennen . Halten Sie das Video an, und versuchen Sie, diese beiden Module zu importieren. Die richtigen Code-Zeilen sind die folgenden. Der nächste Schritt besteht darin, die Punktzahl des Benutzers zu erhalten. Hier definieren wir unsere erste Funktion. Diese Funktion akzeptiert einen Parameter, Benutzername Typ. Es öffnet die Datei Benutzer Partituren data.txt. In unserem Modus, Benutzer Punktzahl don t x t sieht in etwa so aus. In jeder Zeile werden die Informationen eines Benutzers aufgezeichnet. Der erste Wert ist der Benutzername des Benutzers und der zweite ist die Punktzahl des Benutzers. Als nächstes muss die Funktion die Datei zeilenweise lesen, um eine Schleife zu verwenden. Jede Zeile wird dann mit der Split-Funktion geteilt. Split verwendet Komma als Trennzeichen. Lassen Sie uns das Ergebnis der IIT Split-Funktion in der Liste Inhalt speichern. Als nächstes wird die Funktion, die wir überprüfen, ob eine der Zeilen den gleichen Benutzernamen hat , der Wert, der als Parameter übergeben wird. Wenn dies der Fall ist, schließt die Funktion die Datei und gibt die Punktzahl neben diesem Benutzernamen zurück. Wenn dies nicht der Fall ist, schließt die Funktion die Datei und gibt die Zeichenfolge minus1 zurück. 134. Teil 1 Exception und Aktualisierung der Benutzerbewertung: Jetzt müssen wir einige Änderungen an unserem Code machen würde unsere Datei öffnen, bevor wir den ARM-Modus verwenden. Dies hilft, versehentliche Änderungen an der Datei zu verhindern. Beim Öffnen einer Datei und unserem Modus in IO tritt jedoch ein Fehler auf, wenn die Datei nicht bereits existiert. Daher, wenn wir das Programm zum ersten Mal ausführen, werden wir mit einem Fehler enden, da die Dateien Benutzer Punktepunkte TXT vorher nicht existiert. Um diesen Fehler zu verhindern, können wir eine der folgenden Aktionen ausführen. Anstatt die Datei in unserem Modus zu öffnen, können wir sie mit dem W-Modus öffnen. Beim Öffnen im W-Modus wird eine neue Datei erstellt, wenn die Datei vorher noch nicht existiert. Das Risiko bei dieser Methode besteht darin, dass wir versehentlich in die Datei schreiben können, was dazu führt, dass der vorherige Inhalt gelöscht wird. Da unser Programm jedoch ein kleines Programm ist, können wir unseren Code sorgfältig überprüfen, um versehentliches Schreiben zu verhindern. Die zweite Methode besteht darin, eine try except-Anweisung zu verwenden, um den IO-Fehler zu behandeln. Tun Sie das, wir müssen alle unsere vorherigen Codes in den try-Block setzen und dann außer IO-Fehler verwenden, um die Datei nicht gefunden zu behandeln. Fehler im Except-Block informiert Benutzer, dass Dateien nicht gefunden wurden, und dann fahren Sie mit dem Erstellen der Datei fort. Wir verwenden die offene Funktion mit W-Modus, um es zu erstellen. Der Unterschied hier besteht darin, dass die Verwendung des W-Modus, wenn die Datei nicht gefunden wird. Wenn die Datei anfänglich nicht existiert, besteht kein Risiko, frühere Inhalte zu löschen. Nach dem Erstellen der Datei wird geschlossen, die Datei gibt dann die Zeichenfolge minus eins zurück. Sie können eine der oben genannten Methoden wählen, um diese Übung abzuschließen, aber ich bevorzuge die zweite Methode. Also lasst uns den Code ändern. Jetzt werden wir eine weitere Funktion namens Update User Points definieren, die in drei Parametern, neuen Benutzer, Benutzername und die Partitur nimmt . Neuer Benutzer kann entweder „true“ oder „false“ sein. Wenn der neue Benutzer true ist, öffnet die Funktion die Dateibenutzer Punkt-TXT und Anfügemodus und fügt den Benutzernamen des Benutzers und die Punktzahl an die Datei, wenn er oder sie das Spiel beendet. Wenn der neue Benutzer falsch ist, aktualisiert die Funktion die Punktzahl des Benutzers in der Datei. Es gibt jedoch keine Funktion in Python, die es uns ermöglicht, die Textdatei zu aktualisieren. Wir können nur schreiben, um es anzuhängen, aber nicht aktualisiert. Daher müssen wir eine temporäre Datei erstellen. Dies ist eine ziemlich gebräuchliche Praxis in der Programmierung. Lassen Sie uns diese Datei Benutzer Punktepunkte TMP nennen und öffnen Sie sie im W-Modus. Jetzt müssen wir durchlaufen Benutzer Punktzahl don t x t, und kopieren Sie die Daten Zeile für Zeile an Benutzer force.html. Bevor das Kopieren jedoch überprüft wird, ist der Benutzername in dieser Zeile derselbe wie der durch den Parameter bereitgestellte Benutzername. Wenn es gleich ist, wird die Partitur in eine neue Partitur vor dem Schreiben in die temporäre Datei ändern . Zum Beispiel, wenn ein Umfang der Funktion zur Verfügung gestellt oder falsch ist, Andreas und 30, zum Beispiel, Update Benutzerpunkte fällt Andreas 30. Die folgende Tabelle zeigt den Unterschied zwischen den ursprünglichen Benutzerpunkten Punkt TXT und den neuen Benutzerpunkten Punkt TMP. Nachdem wir das Schreiben an Benutzer Score Dot TMP beendet haben schließt beide Dateien und löscht Benutzer Partituren Punkt TXT. Schließlich werden wir Benutzer Partituren Don TMP in Benutzer Partituren Punkt TXT umbenennen. 135. Teil 1 Generationen: Wir sind nun zu dem wichtigsten Teil des Programms gekommen, die mathematische Fragen zu generieren, die Fragen zu degenerieren. Lassen Sie uns zunächst drei Variablen, zwei Listen in einem Wörterbuch deklarieren. Wir werden die beiden Liste, Operanden Liste in der Operatorliste nennen . Operandenliste sollte fünf Zahlen mit 0 speichern ist ihre Anfangswerte. Operatorliste sollte für Zeichenfolgen mit Leerzeichen als Anfangswerte gespeichert werden. Das Wörterbuch besteht aus vier Paaren mit den ganzen Zahlen eins bis vier ist die Wörterbuchschlüssel und Addition, Subtraktion, Multiplikation und Exponentiation fügt die Daten. Lassen Sie uns diesen Operator dict nennen. Zuerst müssen wir die Anfangswerte unserer Operandenliste durch einige Zufallszahlen ersetzen , die von der zufälligen INT-Funktion generiert werden. Rand INT-Funktion nimmt in zwei Parametern, Start und Ende und gibt eine zufällige ganze Zahl n ist wie die als kleiner oder gleich n oder weniger gleich Ende. Zum Beispiel, wenn Rand INT1 dynein aufgerufen wird, wird es zufällig eine ganze Zahl von den Zahlen eins bis neun zurückgeben, um unsere Operandenlistenvariable mit Zufallszahlen zu aktualisieren, wir können dies eins nach dem anderen tun, da Operanden nur hat fünf Mitglieder wie diese. Jedes Mal, wenn rand INT ein dynein aufgerufen wird, wird es zufällig eine ganze Zahl von den Zahlen eins bis neun zurückgeben. Dies ist jedoch nicht der cleverste Weg, unsere Operandenliste zu aktualisieren. Entsprechend, wie umständlich es wäre, wenn die Operandenliste 100 Tausend Mitglieder hat. Eine bessere Alternative ist, eine for-Schleife wie diese zu verwenden. Großartig. Nun, da wir die Zahlen haben, an denen wir arbeiten müssen, müssen wir zufällig für mathematische Symbole für unsere Frage generieren. Um zu tun, dann werden wir die rand INT-Funktion und den Operator D ICT Wörterbuch verwenden. Ran Di Andy generiert den Wörterbuchschlüssel , der dann mit dem Operator dict Wörterbuch dem richtigen Operator zugeordnet wird. Um beispielsweise der Operatorliste 0 ein Symbol zuzuweisen, schreiben wir. Sie sollten also eine for-Schleife verwenden, um diese Aufgabe abzuschließen. Es gibt jedoch ein Problem, das diese Übung schwer genug macht. Erinnern Sie sich, dass in Python Exponentiation oder zwei Sternchen zum Beispiel für Exponent steht. Das Problem ist, wenn wir zwei aufeinanderfolgende Exponente Operatoren in Python haben, also nur zwei Exponenten, drei Exponenten zwei. Im ersten Fall ist die Antwort zwei auf die Macht von neun, die 512 ist. Im zweiten Fall ist die Antwort acht auf die Macht von zwei, die 64. Daher, wenn wir eine Frage wie Exponent drei präsentieren, Exponent zu, wird der Benutzer die Antwort falsch bekommen, wenn er es so interpretiert. Um dieses Problem zu vermeiden, werden wir unseren Code so ändern, dass wir nicht zwei aufeinanderfolgende Zeichen erhalten. Mit anderen Worten, diese Operatorliste ist in Ordnung. Aber diese Operatorliste ist es nicht. Dieser Park ist das Schwierigste unter allen Teilen des Projekts. Lassen Sie uns versuchen, eine Lösung zu finden, um zwei aufeinanderfolgende Exponenten Zeichen zu verhindern. Ausgehend von dem zweiten Element, IE-Index gleich eins und der Operatorliste, die Zeile, wenn Index größer als 0 und Operatorliste Index minus eins, nicht gleich zwei aufeinanderfolgenden Exponenten. Signs überprüft, ob das vorherige Element in der Operatorliste das Exponentensymbol ist. Wenn es nicht der Anweisungsoperator ist gleich Operator. Dick rand IN T12 vier wird ausgeführt da der Bereich an die rand INT-Funktion gegeben ist eins bis vier, die Zahlen 123 oder vier werden generiert, daher die Symbole plus minus multiplizieren unser Exponent wird dem zugewiesen werden Variablen-Operator. Wenn das vorherige Symbol jedoch exponent ist, der else-Anweisungsoperator gleich Operator dict rand IN T1. T3 wird ausgeführt. In diesem Fall ist der Bereich, der der rand INT-Funktion gegeben wird, von eins bis drei. Daher wird das Exponentensymbol, das einen Schlüssel von vier hat und Operator Dick nicht der Operatorvariable zugeordnet werden. 136. Teil 1: Jetzt, da wir unsere Operatoren und Operanden haben, werden wir versuchen, den mathematischen Ausdruck als String zu generieren. Dieser Ausdruck verwendet die fünf Zahlen aus unserer Operandenliste und das Format medizinische Symbole aus unserer Operatorliste, um eine Frage zu bilden Wir müssen eine andere Variable namens Fragezeichenfolge deklarieren und den mathematischen Ausdruck Fragenzeichenfolge. Beispiele für Fragen Zeichenfolge umfassen. Wir werden eine for-Schleife verwenden, um sich auf die einzelnen Teilzeichenfolgen aus Operandenliste und Operatorliste zu konzentrieren . Um den mathematischen Ausdruck zu erhalten. Wir sollten nun den mathematischen Ausdruck als String der variablen Fragezeichenfolge zugewiesen haben. Um das Ergebnis dieses Ausdrucks zu bewerten, werden wir eine brillante integrierte Funktion verwenden, die mit Python kommt. Das Böse. Evil interpretiert eine Zeichenfolge als Code und führt den Code aus. Zum Beispiel, wenn wir E-Mail eins plus zwei plus vier schreiben, erhalten wir die Nummer sieben. Um das Ergebnis unseres mathematischen Ausdrucks zu bewerten, übergeben wir die fragliche Zeichenfolge an die eval Funktion und weisen das Ergebnis einer neuen Variablen mit dem Namen Ergebnis zu. Diese Tiefe ist ziemlich unkompliziert und kann in einer Codezeile abgeschlossen werden. Schließlich werden wir mit unserem Benutzer interagieren. In dieser Übung werden wir ein paar Dinge tun. Schritt eins, zeigt die Frage an den Benutzer an. Schritt zwei und fordert den Benutzer auf, eine Antwort einzugeben. Schritt drei, die Antwort auswerten, die entsprechende Nachricht anzeigen und die Bewertung des Benutzers zurückgeben. Für Schritt eins müssen wir eine eingebaute Funktion zum Bearbeiten von Strings verwenden, wie bereits in Python erwähnt, steht das zwei Sternzeichen für Exponent, also 32, Asterix drei gleich 27. Für die meisten Benutzer hat Asterix jedoch keine Bedeutung. Daher, wenn wir eine Frage als diese anzeigen, wird der Benutzer wahrscheinlich verwirrt sein. Um dies zu verhindern, werden zwei abstrakte Symbole in Frage String durch ein Karat-Symbol ersetzt . Um dies zu tun, werden wir die Funktion ersetzen einbauen, indem sie einfach ist. Genau richtig. Jetzt können Sie den resultierenden Ausdruck an den Benutzer drucken. Für Schritt zwei können wir die Eingabefunktion verwenden, um Benutzereingaben zu akzeptieren. Für Schritt drei sollten wir eine if-Anweisung verwenden, um die Antwort zu bewerten und die richtige Nachricht anzuzeigen. Wenn der Benutzer das richtige bekommen, werden wir den Benutzer beglückwünschen und den Wert eins zurückgeben. Wenn der Benutzer es falsch bekommt, zeigt die richtige Antwort an und gibt den Wert auf 0 zurück. Was ist, wenn die Eingabefunktion Benutzereingaben als String zurückgibt? In diesem Fall müssen Sie, wenn Sie die Eingabe des Benutzers mit der richtigen Antwort vergleichen, einige Typecasting durchführen, um die Benutzereingabe in eine Ganzzahl zu ändern. Wenn Sie die Benutzereingabe in eine Ganzzahl ändern. Und Sie sollten versuchen, eine try except-Anweisung zu verwenden, um zu überprüfen, ob der Benutzer eine Zahl eingegeben hat. Wenn der Benutzer stattdessen eine Zeichenfolge eingegeben hat, sollte das Programm den Benutzer über den Fehler informieren und den Benutzer auffordern, ihn in Nummer einzugeben. Also müssen wir eine echte Schleife verwenden, während Sie den Benutzer nach einer Zahl auffordern, solange er Schrägstrich ist, sie tut dies nicht. Schreiben, während wahr ist äquivalent zum Schreiben von etwas wie eins gleich eins, da man immer gleich eins ist, Hände immer wahr. Die Schleife wird auf unbestimmte Zeit ausgeführt. Lassen Sie uns den Code bearbeiten. Die while-True-Schleife wird weiter schleifen, da die while-Bedingung immer wahr ist. Beenden Sie es nur, wenn der try-Block korrekt ausgeführt wird und die return-Anweisung erreicht. 137. Teil 2 Schreiben: Herzlichen Glückwunsch zum Abschluss des ersten Teils und herzlich willkommen zum zweiten Teil. Teil zwei wird ein Kinderspiel sein, da wir hauptsächlich nur die Funktionen aufrufen werden, die wir zuvor definiert haben. Lassen Sie uns zunächst unser Hauptprogramm in eine try ausser Anweisung einschließen. Wir wollen alle unvorhergesehenen Fehler behandeln. Einer, der das Hauptprogramm ausführt, beginnt, indem er den Code für den try-Block schreibt. Zuerst müssen wir das mathematische Funktionsmodul importieren. Lassen Sie uns als Nächstes den Benutzer zur Eingabe seines Benutzernamens auffordern und den Wert dem variablen Benutzernamen zuweisen. Übergeben Sie diese Variable als Parameter an die Funktion und erhalten Sie Benutzer Punktzahl. Get users score gibt entweder die Punktzahl des Benutzers zurück oder gibt minus eins zurück, wenn der Benutzer nicht gefunden wird. Lassen Sie uns dieses Ergebnis in eine ganze Zahl umwandeln und es der Variablen Benutzerbewertung zuweisen. Jetzt müssen wir den Wert einer anderen Variablen, neuen Benutzer, setzen. Wenn der Benutzer nicht gefunden wird, neue Benutzer gleich true, sonst ist der neue Benutzer falsch. Wenn der neue Benutzer gleich wahr ist, müssen wir es von der Punktzahl von minus eins zu 0 ändern. Der nächste Teil unseres Programms beinhaltet eine while-Schleife. Insbesondere wird unser Programm die Eingabe von unserem Benutzer auffordern, um festzustellen, ob es das Programm beenden oder etwas anderes tun soll. Schritt eins, Sie müssen eine andere Variable deklarieren, welche Benutzerwahl, und geben Sie ihr einen Anfangswert von 0. Schritt zwei. Als nächstes, während Sie eine while-Schleife verwenden, vergleichen Sie die Benutzerwahl mit einer Zeichenfolge Ihrer Wahl, sagen Sie minus eins. Wenn die Benutzerwahl nicht identisch mit minus1 ist, hat der Funktionsgenerator aufgerufen. Um eine neue Frage zu generieren. Schritt drei, Januar Frage wird eine Punktzahl zurückgeben, die der Benutzer Gott für diese Frage, verwenden Sie dieses Ergebnis, um die variable Benutzerbewertung zu aktualisieren. Schritt vier schließlich, um eine Endlosschleife zu verhindern, müssen wir die Eingabefunktion wieder mit der while-Schleife verwenden, um die Benutzereingabe zu akzeptieren und sie zu verwenden, um den Wert der Benutzerwahl zu aktualisieren. Schließlich, nachdem die while-Schleife beendet ist, der nächste Schritt darin, die Benutzerpunkt-TXT-Datei zu aktualisieren. Dazu rufen wir einfach die Update-Benutzerpunkte-Funktion auf. Das ist alles für den try-Block. Jetzt der außer Block, wir informieren den Benutzer einfach, dass ein Fehler aufgetreten ist und das Programm beendet wird. Wird diese feucht beenden, haben Sie ein komplettes Programm. Lassen Sie uns das Programm starten. Das Programm wird nach einem Benutzernamen fragen. Geben wir meinen Namen ein. Dann generiert das Programm eine Frage. Der mathematische Ausdruck, den ich berechnen muss, werde ich die Zahlen jetzt nicht berechnen, also werde ich eine Zufallszahl eingeben. Natürlich ist meine Antwort falsch und es gibt eine richtige Antwort. Danach fragt mich das Programm, ob ich fortfahren oder minus1 eingeben möchte , um das Programm zu beenden. Ich werde ein anderes Beispiel machen. Es funktioniert großartig. Aufgeregt. Ich hoffe, du bist genauso aufgeregt wie ich. Wir sind zum Ende seines Meilenstein-Projekts gekommen und hoffentlich haben Sie Ihr erstes Programm erfolgreich codiert. Wenn Sie Probleme beim Abschließen einer Übung haben, lassen Sie es mich wissen. Aber wir sind noch nicht fertig. Ich habe eine zusätzliche Übung für Sie, um sich selbst herauszufordern. Manchmal kann die generierte Frage zu einer Antwort führen , die sehr groß oder sehr klein ist. Es ist sehr unbequem für Benutzer zu berechnen und Schlüssel in einer sehr großen oder sehr kleinen Zahl. Daher wollen wir Antworten vermeiden, die zu groß oder klein sind. Können Sie das Programm ändern, um Fragen zu verhindern, die in Antworten größer als 10 Tausend und kleiner als negative 10 Tausend führen . Versuchen Sie, den Code zu ändern und überprüfen Sie den Code aus Ihren Ressourcendateien. Danke fürs Zuschauen.