Mindmap-Galerie Notizen zum Python-Lernen (erste Einführung in Python)
Erlernen des Python-Konzepts und ein vorläufiges Verständnis dessen, was Python ist. Python ist bereits eine der schlanksten und am einfachsten zu erlernenden Programmiersprachen der Welt. Python kann auf allen gängigen Betriebssystemen und Computern ausgeführt werden und kann in allen Bereichen eingesetzt werden, vom Aufbau von Webservern bis hin zur Erstellung von Desktop-Anwendungen.
Bearbeitet um 2024-10-13 16:11:18Dies ist eine Mindmap über die Analyse der Charakterbeziehungen in „Jane Eyre“, die Ihnen helfen soll, dieses Buch zu verstehen und zu lesen. Die Beziehungen in dieser Karte sind sehr praktisch und es lohnt sich, sie zu sammeln.
Dies ist eine Mindmap zum Umgang mit der Zeit als Freund. „Treating Time as a Friend“ ist ein praktischer Leitfaden für Zeitmanagement und persönliches Wachstum. Der Autor Li Xiaolai vermittelt den Lesern anhand ausführlicher Geschichten und anschaulicher Beispiele praktische Fähigkeiten, wie man Prokrastination überwinden, die Effizienz verbessern und für die Zukunft planen kann. Dieses Buch eignet sich nicht nur für junge Menschen, die um ihre Zukunft kämpfen, sondern auch für alle, die ihre Zeit besser verwalten und sich persönlich weiterentwickeln möchten.
Wie kommuniziert man effizient, vermeidet Kommunikationsschwierigkeiten im Arbeitsalltag und verbessert die Konversationsfähigkeiten? „Crucial Conversations“ ist ein Buch, das 2012 von Mechanical Industry Press veröffentlicht wurde. Die Autoren sind (US) Corey Patterson, Joseph Graney, Ron McMillan und Al Switzler. Das Buch analysiert auch viele Sprech-, Zuhör- und Handlungsfähigkeiten über Menschen häufige blinde Flecken in der Kommunikation, ergänzt durch Dialogsituationen und Kurzgeschichten, um den Lesern zu helfen, diese Fähigkeiten schnellstmöglich zu erlernen. Hoffe das hilft!
Dies ist eine Mindmap über die Analyse der Charakterbeziehungen in „Jane Eyre“, die Ihnen helfen soll, dieses Buch zu verstehen und zu lesen. Die Beziehungen in dieser Karte sind sehr praktisch und es lohnt sich, sie zu sammeln.
Dies ist eine Mindmap zum Umgang mit der Zeit als Freund. „Treating Time as a Friend“ ist ein praktischer Leitfaden für Zeitmanagement und persönliches Wachstum. Der Autor Li Xiaolai vermittelt den Lesern anhand ausführlicher Geschichten und anschaulicher Beispiele praktische Fähigkeiten, wie man Prokrastination überwinden, die Effizienz verbessern und für die Zukunft planen kann. Dieses Buch eignet sich nicht nur für junge Menschen, die um ihre Zukunft kämpfen, sondern auch für alle, die ihre Zeit besser verwalten und sich persönlich weiterentwickeln möchten.
Wie kommuniziert man effizient, vermeidet Kommunikationsschwierigkeiten im Arbeitsalltag und verbessert die Konversationsfähigkeiten? „Crucial Conversations“ ist ein Buch, das 2012 von Mechanical Industry Press veröffentlicht wurde. Die Autoren sind (US) Corey Patterson, Joseph Graney, Ron McMillan und Al Switzler. Das Buch analysiert auch viele Sprech-, Zuhör- und Handlungsfähigkeiten über Menschen häufige blinde Flecken in der Kommunikation, ergänzt durch Dialogsituationen und Kurzgeschichten, um den Lesern zu helfen, diese Fähigkeiten schnellstmöglich zu erlernen. Hoffe das hilft!
Notizen zum Python-Lernen (erste Einführung in Python)
Teil 1 Einführung in die Programmierung
Kapitel 1 Erste Einführung in Python-Konzepte
Was ist Programmierung?
Unter Programmieren versteht man das Schreiben von Anweisungen, die ein Computer ausführen soll.
Die Anweisungen, die ein Computer ausführt, werden Code genannt.
Was ist Python?
Python ist eine Open-Source-Programmiersprache, die vom niederländischen Programmierer Guido van Rossum erfunden wurde.
Python ist bereits eine der schlanksten und am einfachsten zu erlernenden Programmiersprachen der Welt. Python kann auf allen gängigen Betriebssystemen und Computern ausgeführt werden und kann in allen Bereichen eingesetzt werden, vom Aufbau von Webservern bis hin zur Erstellung von Desktop-Anwendungen.
interaktive Shell
Python wird mit einem Programm namens IDLE geliefert, das für Interactive Development Environment steht. Wir werden Python-Code in IDLE eingeben.
Das Programm IDLE wird als interaktive Shell bezeichnet. Sie können Python-Code direkt eingeben und das Programm druckt die Ergebnisse aus.
Texteditor
Starten Sie die IDLE-Anwendung, klicken Sie auf „Datei“ und wählen Sie „Neue Datei erstellen“. Ein Texteditor wird geöffnet.
Code kann in einem Texteditor geschrieben und zur späteren Ausführung gespeichert werden.
Der Unterschied zwischen Textbearbeitung und interaktiver Shell
1. Texteditoren eignen sich eher für Programme, die speichern und bearbeiten möchten. Wenn Sie in einer interaktiven Shell falschen Code eingeben und einen Fehler verursachen, müssen Sie den gesamten Code erneut eingeben. Mit einem Texteditor einfach korrigieren und erneut ausführen.
2. Die Ausgabe beim Ausführen des Programms aus einer Datei unterscheidet sich geringfügig von der Ausgabe beim Ausführen des Programms aus einer interaktiven Shell. Bitte beachten Sie, von wo aus das Programm ausgeführt wird.
Glossar
Programmieren: Befehle schreiben, die ein Computer ausführen soll.
Code: Von einem Programmierer geschriebene Anweisungen zur Ausführung durch einen Computer.
Low-Level-Programmiersprachen: Programmiersprachen, die eher dem Schreiben von Anweisungen in Binärform (0en und 1en) ähneln als High-Level-Programmiersprachen (Programmiersprachen, die eher wie Englisch klingen).
Assemblersprache: Eine schwer zu erlernende Programmiersprache.
Programmiersprache auf hohem Niveau: Eine Programmiersprache, die eher nach Englisch als nach einer Bearbeitungssprache auf niedrigem Niveau klingt.
Kapitel 2 Programmierübersicht
Kommentar: Eine Codezeile (oder ein Teil) in Englisch oder einer anderen natürlichen Sprache. Am Anfang der Zeile befindet sich eine spezielle Markierung, die die Sprache anweist, diese Codezeile zu ignorieren. Python verwendet #, um Kommentare zu erstellen.
Der Zweck von Kommentaren besteht darin, zu erklären, was der Code tut.
Kommentare sind nur erforderlich, wenn im Code spezielle Vorgänge ausgeführt werden oder der Code nicht klar und leicht verständlich ist.
Drucken (Drucken), das Programm kann alles drucken, solange Sie daran denken, doppelte Anführungszeichen hinzuzufügen.
Codezeilen: Python-Programme bestehen aus Codezeilen.
Normalerweise unterscheiden wir Code nach der Anzahl der Codezeilen.
In IDLE können Sie das Menü „Bearbeiten“ öffnen und die Schaltfläche „Gehe zu Zeile“ auswählen, um zur angegebenen Zeile des Programms zu springen.
In einer interaktiven Shell können Sie jeweils nur eine Codezeile eingeben und nicht mehrere Codezeilen kopieren und einfügen.
Manchmal ist ein Codeabschnitt länger als eine Zeile und kann mithilfe von dreifachen Anführungszeichen, Klammern, eckigen Klammern oder geschweiften Klammern um eine neue Zeile erweitert werden.
Sie können den Code auch mit einem Backslash\ umbrechen.
Schlüsselwörter: Einige Wörter mit besonderer Bedeutung in Programmiersprachen wie Python.
Abstand: Einrückung teilt dem Python-Interpreter mit, wo ein Codeblock beginnt und endet. Der Einzugsabstand in Python beträgt immer 4 Leerzeichen.
Datentyp
Python unterteilt Daten in verschiedene Kategorien, nämlich Datentypen.
String (str, Abkürzung für string), ein String ist eine Folge von einem oder mehreren Zeichen, die in Anführungszeichen eingeschlossen sind.
Ganzzahlige Daten (int, der gesamte Prozess ist ganzzahlig), ganzzahlige Daten.
Datentyp Float, Gleitkommazahl, Dezimalzahl (Zahl mit Dezimalpunkt).
Der boolesche Wert (bool, boolean) hat nur zwei Werte: True und False.
None Typ, sein Wert ist immer None und wird verwendet, um fehlende Daten anzuzeigen.
In Python wird jeder Datenwert als Objekt bezeichnet.
Ein Objekt kann als Datenwert mit drei Eigenschaften betrachtet werden
Eindeutiger Bezeichner: Bezieht sich auf die Adresse im Computerspeicher, die sich nicht ändert.
Datentyp: Die Datenkategorie, zu der das Objekt gehört, bestimmt die Eigenschaften des Objekts und ändert sich nicht.
Wert: Die Daten, die das Objekt darstellen.
Konstanten und Variablen
Eine Konstante ist ein Wert, der sich nie ändert.
Eine Variable bezieht sich auf einen Wert, der sich ändert.
Eine Variable besteht aus einem oder mehreren Zeichennamen, denen mithilfe des Zuweisungsoperators Gleichheitszeichen ein Wert zugewiesen wird.
4 Prinzipien für die Benennung von Variablen
1. Variablennamen dürfen keine Leerzeichen enthalten. Wenn Sie zwei Wörter in einem Variablennamen verwenden möchten, fügen Sie dazwischen einen Unterstrich ein.
2. In Variablennamen dürfen nur bestimmte Buchstaben, Zahlen und Unterstriche verwendet werden.
3. Variablennamen dürfen nicht mit Zahlen beginnen.
4. Sie können keine Python-Schlüsselwörter als Variablennamen verwenden.
Unter Grammatik (Syntax) versteht man eine Reihe von Regeln und Prozessen, die die Struktur von Sätzen in einer Sprache regeln, insbesondere die Reihenfolge von Wörtern.
Fehler und Ausnahmen
Zwei Arten von Fehlern in Python: Syntaxfehler und Ausnahmen.
Arithmetische Operatoren
Python unterteilt Operatoren in mehrere Typen und arithmetische Operatoren werden für einfache arithmetische Berechnungen verwendet.
Kapitel 3 Funktionen
Funktion: Eine zusammengesetzte Anweisung, die Eingaben akzeptiert, Anweisungen ausführt und Ausgaben zurückgibt.
Beim Aufrufen einer Funktion wird der Funktion die Eingabe bereitgestellt, die sie benötigt, um Anweisungen auszuführen und eine Ausgabe zurückzugeben.
Parameter: Jede Eingabe in die Funktion ist ein Parameter. Wenn Sie einer Funktion Parameter bereitstellen, spricht man von „Übergabe von Funktionsparametern“.
Erforderliche Parameter: Wenn der Benutzer die Funktion aufruft, müssen alle erforderlichen Parameter übergeben werden, andernfalls meldet Python einen Ausnahmefehler.
Optionale Parameter: Funktionen werden nur bei Bedarf übergeben und sind nicht für die Ausführung des Programms erforderlich. Wenn keine optionalen Parameter übergeben werden, verwendet die Funktion ihren Standardwert.
Definieren Sie eine Funktion: Um eine Funktion in Python zu erstellen, müssen Sie einen Funktionsnamen auswählen und seine Parameter, sein Verhalten und seinen Rückgabewert definieren.
Funktionsname: Das Schlüsselwort def teilt dem Python-Operator mit, dass eine Funktion definiert wird.
Geben Sie nach dem Schlüsselwort def den Namen der Funktion an. Die Namensauswahl folgt denselben Regeln wie bei Variablennamen.
Konventionell sollten Funktionsnamen keine Großbuchstaben verwenden und Wörter sollten durch Unterstriche getrennt werden: like_this.
Parameter: Fügen Sie nach der Benennung der Funktion ein Paar Klammern nach dem Namen hinzu. In den Klammern stehen die Parameter, die die Funktion akzeptieren soll.
Eine Funktion kann einen oder mehrere Parameter haben oder keine Parameter akzeptieren. Wenn Sie eine Funktion definieren, die keine Parameter erfordert, müssen Sie beim Definieren der Funktion nur die Klammern leer lassen.
Definition: Fügen Sie nach den Klammern einen Doppelpunkt hinzu, brechen Sie dann 4 Leerzeichen ein und rücken Sie sie ein. Der gesamte um 4 Leerzeichen eingerückte Code nach dem Doppelpunkt ist die Definition der Funktion.
Rückgabewert: Das Schlüsselwort return gibt den beim Aufruf der Funktion ausgegebenen Wert an, den wir als Rückgabewert der Funktion bezeichnen.
Wenn Sie den Funktionsrückgabewert später im Programm verwenden müssen, empfiehlt es sich, den Funktionsrückgabewert in einer Variablen zu speichern.
Die Funktion muss eine Return-Anweisung enthalten. Wenn die Funktion keine Return-Anweisung hat, wird None zurückgegeben.
Syntax: Sie können eine Funktion mit der Syntax „[Funktionsname]([durch Kommas getrennte Argumente])“ aufrufen.
Integrierte Funktionen: Die Programmiersprache Python verfügt über eine Funktionsbibliothek namens integrierte Funktionen, mit der verschiedene Berechnungen und Aufgaben ohne zusätzlichen Aufwand ausgeführt werden können.
Die integrierte Funktion len gibt die Länge des zurückgegebenen Objekts an, z. B. die Länge einer Zeichenfolge (Anzahl der Zeichen).
Die in str integrierte Funktion akzeptiert str ein Objekt als Parameter und gibt ein neues Objekt (String) mit dem Datentyp str zurück
Int integrierte Funktion, die ein Objekt als Parameter akzeptiert und ein ganzzahliges Objekt (Ganzzahl) zurückgibt.
Die integrierte Float-Funktion akzeptiert ein Objekt als Parameter und gibt ein Gleitkommazahlenobjekt (dezimal) zurück.
Notiz:
An str-, int- oder float-Funktionen übergebene Parameter müssen in Strings, Ganzzahlen oder Gleitkommazahlen konvertierbar sein.
Die str-Funktion akzeptiert die meisten Objekte als Parameter, die int-Funktion kann jedoch nur Zeichenfolgen oder Gleitkommazahlen akzeptieren, deren Inhalt numerisch ist. Die Float-Funktion kann nur Zeichenfolgen oder Ganzzahlobjekte akzeptieren, deren Inhalt numerisch ist.
Die integrierte Eingabefunktion, Mobiltelefon-Benutzerinformationen, akzeptiert eine Zeichenfolge als Parameter und zeigt sie dem Benutzer an, der das Programm verwendet.
Der Benutzer gibt die Antwort in die Shell ein und das Programm speichert die Antwort in einer Variablen.
Funktionen wiederverwenden: Funktionen können nicht nur zum Berechnen und Zurückgeben von Werten verwendet werden, sondern können auch die Funktionen kapseln, die wir verwenden möchten.
Da Funktionen wiederverwendet werden können, kann die Verwendung von Funktionen die Codemenge reduzieren.
Die Funktionen des neuen Programms sind genau die gleichen wie im vorherigen Programm. Da die Funktionen jedoch in einer Funktion gekapselt sind, die bei Bedarf jederzeit aufgerufen werden kann, wird die Codemenge erheblich reduziert und die Lesbarkeit verbessert.
Umfang: ein sehr wichtiges Attribut von Variablen.
Wenn Sie eine Variable definieren, bezieht sich ihr Gültigkeitsbereich darauf, welche Teile des Programms sie lesen und schreiben können.
Der Gültigkeitsbereich einer Variablen wird dadurch bestimmt, wo im Programm sie definiert ist.
Definieren Sie eine Variable außerhalb einer Funktion oder Klasse
Globaler Geltungsbereich: Kann überall im Programm gelesen und geschrieben werden.
Globale Variable: Eine Variable mit globalem Gültigkeitsbereich.
Definieren Sie eine Variable innerhalb einer Funktion oder Klasse
Lokaler Geltungsbereich: Das heißt, das Programm kann die Variable nur innerhalb der Funktion lesen und schreiben, in der sie definiert ist.
Lokale Variable: Eine Variable mit lokalem Gültigkeitsbereich.
Bei lokalen Gültigkeitsbereichen ist etwas Vorsicht geboten: Das Schlüsselwort global muss explizit verwendet werden und die Variablen, die Sie ändern möchten, müssen anschließend ausgehandelt werden.
Ausnahmebehandlung: Unterstützt das Testen von Fehlerbedingungen, das Abfangen von Ausnahmen beim Auftreten von Fehlern und die anschließende Entscheidung, wie mit ihnen umgegangen werden soll.
try-Klausel: enthält Fehler, die auftreten können.
Ausnahmeklausel: Enthält Code, der nur ausgeführt wird, wenn ein Fehler auftritt.
Hinweis: Verwenden Sie in Ausnahmeanweisungen keine durch Try-Anweisungen definierten Variablen.
Dokumentationszeichenfolge (Docstring): Wird zur Erläuterung von Funktionsfunktionen und zur Aufzeichnung erforderlicher Parametertypen verwendet.
Kapitel 4 Container
Verfahren
Methoden sind Funktionen, die eng mit einem bestimmten Datentyp verknüpft sind.
Methoden führen wie Funktionen Code aus und geben Ergebnisse zurück.
Anders als bei Funktionen: Methoden können nur für Objekte aufgerufen werden.
Parameter können an Methoden übergeben werden.
Container 1: Liste (Liste)
Konzept: Eine Liste ist ein Container, der Objekte in einer festen Reihenfolge speichert.
Darstellungsmethode: Listen werden durch eckige Klammern ([ ]) dargestellt.
Listensyntax erstellen:
Verwenden Sie die Listenfunktion, um eine leere Liste zu erstellen.
Beispiel: Frucht = Liste( )
Verwenden Sie direkt eckige Klammern ( [ ] ).
Beispiel: Frucht = [ ]
Wenn die Liste Objekte enthält, müssen diese durch Kommas getrennt werden.
Beispiel: Frucht = [„Apfel“, „Orange“, „Birne“]
Funktionen auflisten
Die Elemente in der Liste sind geordnet
Die Reihenfolge der Elemente in einer Liste ist festgelegt, es sei denn, die Reihenfolge der Elemente in der Liste wird geändert.
Sie können die Append-Methode verwenden, um der Liste ein neues Element hinzuzufügen, aber die Append-Methode fügt das neue Element immer am Ende der Liste hinzu.
Beispiel: Frucht = [„Apfel“, „Orange“, „Birne“] Fruit.append("Banane") Fruit.append("Pfirsich") drucken(Frucht) >>['Apfel','Orange','Birne','Banane','Pfirsich']
Der Index der Elemente in der Liste, der Index des ersten Elements ist 0, nicht 1.
Listen können jeden Datentyp enthalten.
Listen sind veränderbar. Wenn ein Container veränderbar ist, können Objekte zum Container hinzugefügt oder daraus gelöscht werden.
Sie können ein Element in einer Liste ändern, indem Sie seinen Index einem neuen Objekt zuweisen.
Beispiel: Farben = [„blau“, „grün“, „gelb“] drucken (Farben) farben[2] = "rot" drucken (Farben) >>['blau','grün','gelb'] >>['blau','grün','rot']
Sie können auch die Pop-Methode verwenden, um das letzte Element aus der Liste zu entfernen.
Beispiel: Farben = [„blau“, „grün“, „gelb“] drucken (Farben) item = farben.pop( ) drucken (Artikel) drucken (Farben) >>['blau','grün','gelb'] >>'gelb' >>'blau','grün']
Sie können die Pop-Methode nicht für eine leere Liste verwenden.
Mit dem Additionsoperator können Sie zwei Listen zusammenführen
Beispiel: farben1 = ["blau", "grün", "gelb"] farben2 = ["orange", "rosa", "schwarz"] Farben1 Farben2 >> ['blau', 'grün', 'gelb', 'orange', 'rosa', 'schwarz']
Mit dem Schlüsselwort in können Sie prüfen, ob ein Element in der Liste enthalten ist
Mit dem Schlüsselwort not können Sie prüfen, ob ein Element nicht in der Liste enthalten ist
Verwenden Sie die Funktion len, um die Größe der Liste (einschließlich der Anzahl der Elemente) zu ermitteln.
Container 2: Tupel
Konzept: Ein Tupel ist ein Container, der geordnete Objekte speichert.
Darstellungsmethode: Verwenden Sie Klammern, um den Vorfahren darzustellen, und Kommas müssen verwendet werden, um die Elemente im Vorfahren zu trennen.
Tupelsyntax erstellen:
Verwenden Sie die Tupelfunktion
Beispiel: my_tuple = tuple( )
Verwenden Sie Klammern direkt
Beispiel: my_tuple = ( )
Auch wenn das Tupel nur ein Element enthält, muss nach dem Element ein Komma hinzugefügt werden.
Eigenschaften des Tupels:
Sie können nur Vorfahren erstellen, keine neuen Elemente hinzufügen oder vorhandene Elemente ändern.
Das Element des Tupels kann auf die gleiche Weise wie eine Liste abgerufen werden, indem auf seinen Index verwiesen wird:
Beispiel: dys = („1984“, „Brave New World“, „Fahrenheit 452“) dys[2] >>'Fahrenheit 451'
Mit dem Schlüsselwort in können Sie prüfen, ob sich ein Element im Vorfahren befindet.
Sie können das Schlüsselwort not in der In-Apologie hinzufügen, um zu überprüfen, ob das Element im Vorfahren nicht vorhanden ist.
Tupel-Zweck: Tupel sind sehr nützlich, wenn Sie mit Werten arbeiten, von denen Sie wissen, dass sie sich nie ändern werden, und Sie nicht möchten, dass andere Programme sie ändern.
Container 3: Wörterbuch
Konzept: Ein Wörterbuch ist ein weiterer integrierter Container zum Speichern von Objekten. Sie werden verwendet, um zwei Objekte, Schlüssel und Wert, zu verknüpfen. Durch die Verknüpfung eines Objekts mit einem anderen, auch Mapping genannt, entsteht ein Schlüssel-Wert-Paar. Sie können einem Wörterbuch Schlüssel-Wert-Paare hinzufügen und dann das Wörterbuch mithilfe des Schlüssels abfragen, um den entsprechenden Wert zu erhalten. Eine Abfrage anhand des Werts ist jedoch nicht möglich.
Darstellungsmethode: Wörterbücher werden durch geschweifte Klammern ( { } ) dargestellt.
Syntax zum Erstellen eines Wörterbuchs:
Erstellen Sie mit der Diktatfunktion
Beispiel: my_dict = dict( )
Direkt mit geschweiften Klammern erstellen ({ })
Beispiel: my_dict = { }
Schlüssel-Wert-Paare können direkt beim Erstellen eines Wörterbuchs hinzugefügt werden. Beide oben genannten Syntaxen erfordern Doppelpunkte zur Trennung von Schlüsseln und Werten und jedes Schlüssel-Wert-Paar muss durch Kommas getrennt werden.
Beispiel: Frucht = {"Apfel": "Rot", "Banane": "Gelb"}
Wörterbuchfunktionen:
Die Wörterbuchschlüssel werden nicht benötigt.
Wörterbücher sind veränderlich. Nachdem Sie ein Wörterbuch erstellt haben, können Sie mit der Syntax „[Wörterbuchname] [[Schlüssel]]“ neue Schlüssel-Wert-Paare hinzufügen und mit der Syntax „[Wörterbuchname] [[Schlüssel]]“ nach Werten suchen.
Beispiel: Fakten = dict ( ) #Schlüssel-Wert-Paare hinzufügen Fakten ["Code"] = "Spaß" print(Fakten["Code"]) #Schlüssel-Wert-Paare hinzufügen Fakten ["Bill"] = "Gates" #Finden Sie den Wert, der dem Schlüssel entspricht print (Fakten [„Bill“]) #Schlüssel-Wert-Paare hinzufügen Facts["gegründet"] = 1776 #Finden Sie den Wert, der dem Schlüssel entspricht print (Fakten [„gegründet“])
Wörterbuchwerte können beliebige Objekte sein. Aber Wörterbuchschlüssel müssen unveränderlich sein. Zeichenfolgen oder Tupel können als Wörterbuchschlüssel verwendet werden, Listen oder Wörterbücher jedoch nicht.
Sie können Schlüsselwörter verwenden, um zu überprüfen, ob ein Schlüssel im Wörterbuch vorhanden ist, Sie können sie jedoch nicht verwenden, um zu überprüfen, ob ein Wert im Wörterbuch vorhanden ist.
Beispiel: bill = dict ({"Bill Gates": "charitable"}) print("Bill Gates" in Rechnung)
Fügen Sie das Schlüsselwort „not“ vor dem Schlüsselwort „in“ hinzu, um zu prüfen, ob der Schlüssel nicht im Wörterbuch enthalten ist.
Verwenden Sie das Schlüsselwort del, um ein Schlüssel-Wert-Paar aus einem Wörterbuch zu löschen.
Beispiel: Bücher = {"Dracula": "Stoker", "1984": "Orwell", "Der Prozess": "Kafka"} drucken (Bücher) del Books["Der Prozess"] drucken (Bücher)
Beispiel für ein Programm, das ein Wörterbuch verwendet:
Reime = {"1": "Spaß", „2“: „blau“, „3“: „ich“, „4“:Etage, „5“: „live“ } n = input("Geben Sie eine Zahl ein:") wenn n in Reimen: Reime = Reime[n] drucken (Reime) anders: print("Nicht gefunden.")
Container verschachtelter Container
Container können in Containern gelagert werden.
Glossar
Methode: Eine Funktion, die eng mit dem angegebenen Datentyp zusammenhängt.
Liste: Ein Container, der geordnete Objekte speichert.
Iterierbar: Ein Objekt ist iterierbar, wenn auf jedes Element im Objekt über eine Schleife zugegriffen werden kann.
Iterierbare Objekte: Iterierbare Objekte wie Zeichenfolgen, Listen und Elemente.
Index: Eine Zahl, die die Position eines Elements in einem iterierbaren Objekt darstellt.
Veränderbar: Der Inhalt des Containers kann sich ändern.
Unveränderlich: Der Inhalt des Containers kann nicht geändert werden.
Wörterbuch: Ein integrierter Container zum Speichern von Objekten, der ein Objekt namens Schlüssel einem Objekt namens Wert zuordnet.
Schlüssel: Wird verwendet, um den entsprechenden Wert im Wörterbuch zu finden.
Wert: Der Wert im Wörterbuch, der dem Schlüssel zugeordnet ist.
Mapping: Verknüpfen eines Objekts mit einem anderen.
Schlüssel-Wert-Paare: Schlüssel werden Werten in einem Wörterbuch zugeordnet.
Kapitel 5 String-Operationen
5.1 String in dreifachen Anführungszeichen
Wenn die Zeichenfolge mehr als eine Zeile umfasst, können dreifache Anführungszeichen verwendet werden.
Wenn Sie einfache oder doppelte Anführungszeichen verwenden, um eine Zeichenfolge zu definieren, die sich über mehrere Zeilen erstreckt, meldet Python einen Syntaxfehler.
5.2 Index
Strings sind wie Listen und Tupel iterierbar.
Das erste Zeichen in der Zeichenfolge hat den Index 0 und jeder weitere Index wird um 1 erhöht.
Python unterstützt auch die Verwendung negativer Indizes zum Suchen von Elementen in Listen: das Suchjahr, das zum Suchen von Elementen in einem iterierbaren Objekt von rechts nach links verwendet werden kann (muss eine negative Zahl sein).
5.3 Strings sind unveränderlich
Zeichenfolgen sind wie Tupel unveränderlich und die Zeichen in der Zeichenfolge können nicht geändert werden.
Wenn Sie es ändern möchten, müssen Sie eine neue Zeichenfolge erstellen:
Beispiel: ff = „F.Fitzgerald“ ff = „F. Scott Fitzgerald“
5.4 String-Verkettung
Mit dem Additionsoperator können Sie zwei oder mehr Zeichenfolgen kombinieren. Das Ergebnis ist eine neue Zeichenfolge, die aus den Zeichen der ersten Zeichenfolge und den Zeichen der anderen Zeichenfolgen besteht.
Beispiel: „Katze“ „im“ „Hut“
5.5 String-Multiplikation
Mit dem Multiplikationsoperator können Sie Zeichenfolgen und Zahlen multiplizieren.
Beispiel: „Sawyer“ * 3 >>SawyerSawyerSawyer
5.6 Fall ändern
Mit der Upper-Methode einer Zeichenfolge können Sie jedes Zeichen in der Zeichenfolge in Großbuchstaben umwandeln.
Beispiel: „Wir halten an diesen Wahrheiten fest…“.upper( ) >>'WIR HABEN DIESE WAHRHEITEN...'
Sie können die Methode „lower“ einer Zeichenfolge verwenden, um jedes Zeichen in der Zeichenfolge in Kleinbuchstaben umzuwandeln.
Beispiel: „SO GEHT ES.“.lower( ) >>'so geht's.'
Sie können die Methode „capitalize“ einer Zeichenfolge verwenden, um den ersten Buchstaben der Zeichenfolge in einen Großbuchstaben zu ändern.
Beispiel: „vier scheuern und ...“.capitalize( ) >>"Vier Scheuer und..."
5.7 Formatierung
Mit der Formatmethode können Sie eine neue Zeichenfolge erstellen, die das „{ }“ in der Zeichenfolge durch die übergebene Zeichenfolge ersetzt.
Beispiel: "William { }".format("Faulkner") >> „William Faulkner“
Sie können die Formatmethode auch verwenden, um Variablen als Parameter zu übergeben:
Beispiel: last = „Faulkner“ „William { }“.format(last) >> „William Faulkner“
Geschweifte Klammern ({ }) können wiederholt verwendet werden:
Beispiel: Autor = „William Faulkner“ year_born = „1897“ „{ } wurde in { } geboren.“Format.(Autor, Jahr_Geboren) >>„William wurde 1897 geboren.“
Die Formatmethode ist nützlich, wenn Sie eine Zeichenfolge basierend auf Benutzereingaben erstellen möchten:
Beispiel: n1 = input("Geben Sie ein Substantiv ein:") v = input("Geben Sie ein Verb ein:") adj = input("Geben Sie ein Adj ein:") n2 = input("Geben Sie ein Substantiv ein:") r = """Das { } { } das { } { } "".format(n1, v, adj, n2) drucken(r) >> Geben Sie ein Substantiv ein:
5.8 Aufteilung
Mit der Split-Methode kann eine Zeichenfolge in zwei oder mehr Zeichenfolgen aufgeteilt werden.
Sie müssen eine Zeichenfolge als Parameter der Split-Methode übergeben und diese verwenden, um die ursprüngliche Zeichenfolge in mehrere Zeichenfolgen aufzuteilen.
Beispiel: „Ich bin über die Pfütze gesprungen. Sie war 12 Fuß hoch!“.split(".") >>[„Ich bin über die Pfütze gesprungen“, „Es waren 12 Fuß!“]
Das Split-Ergebnis ist eine Liste mit zwei Elementen: einer Zeichenfolge, die aus allen Zeichen vor dem Punkt besteht, und einer Zeichenfolge, die aus allen Zeichen nach dem Punkt besteht.
5.9 Verbindung
Die Join-Methode fügt zwischen jedem Zeichen der Zeichenfolge neue Zeichen hinzu.
Beispiel: first_ three = „abc“ result = " ".join(first_two) drucken(Ergebnis) >>"a b c"
Die Join-Methode kann für eine leere Zeichenfolge oder eine Zeichenfolge mit Leerzeichen aufgerufen werden, wobei eine Liste von Zeichenfolgen als Argumente übergeben und diese Zeichenfolgen dadurch zu einer einzigen Zeichenfolge verkettet werden.
Beispiel: Wörter = ["Die", "Fuchs", „gesprungen“, "über", "Die", "Zaun", ".] one = "".join(words) ones = " ".join(words) drucken(eins) print(ones) >>Der Fuchs sprang über den Zaun. >>Der Fuchs sprang über den Zaun.
5.10 Leerzeichen entfernen
Verwenden Sie die Strip-Methode, um Leerzeichen am Anfang und Ende einer Zeichenfolge zu entfernen.
Beispiel: s = „Der“ s = s.strip() Druck(e) >>Die
5.11 Austausch
Bei der Ersetzungsmethode ist der erste Parameter die zu ersetzende Zeichenfolge und der zweite Parameter die zum Ersetzen verwendete Zeichenfolge. Sie können die zweite Zeichenfolge verwenden, um denselben Inhalt in der ursprünglichen Zeichenfolge wie in der ersten Zeichenfolge zu ersetzen.
Beispiel: equ = „Alle Tiere sind gleich.“ equ = equ.replace("a","@") print(equ)
5.12 Suchindex
Sie können die Indexmethode verwenden, um den Index des ersten Vorkommens einer Zeichenfolge in einer Zeichenfolge abzurufen.
Übergeben Sie das Zeichen, das Sie suchen möchten, als Parameter, und die Indexmethode kann den Index des ersten Vorkommens in der Zeichenfolge zurückgeben:
Beispiel: print("Tiere".index("m")) >>3
Wenn Sie nicht sicher sind, ob ein passendes Ergebnis vorliegt, können Sie die folgende Ausnahmebehandlungsmethode verwenden:
Beispiel: Früchte = ["Birne", "Apfel", "Banane", "Pfirsich", "Traube"] n = input("Geben Sie einen Fruchtnamen ein:") #Versuchen Sie, den eingegebenen Fruchtnamen zu finden versuchen: print(fruits.index(n)) außer: print("Nicht gefunden") >>Geben Sie einen Fruchtnamen ein: Banane >>2
5.13 im Stichwort
Das Schlüsselwort in kann prüfen, ob sich eine Zeichenfolge in einer anderen Zeichenfolge befindet, und das Rückgabeergebnis ist True oder False:
Beispiel: print("Katze" in "Katze mit dem Hut.")
Fügen Sie das Schlüsselwort not vor in hinzu, um zu prüfen, ob eine Zeichenfolge nicht in einer anderen Zeichenfolge enthalten ist.
5.14 String-Escape
Unter String-Escape versteht man das Hinzufügen eines Symbols vor einem Zeichen mit besonderer Bedeutung in Python, um Python mitzuteilen, dass das Symbol in diesem Fall ein Zeichen darstellt und keine besondere Bedeutung hat.
Escape mit Backslash in Python.
5.15 Newline-Zeichen
Fügen Sie zur Zeichenfolge hinzu, um eine neue Zeile anzugeben:
Beispiel: print("Zeile1 Zeile2 Zeile3") >>Zeile1 >>Zeile2 >>Zeile3
5.16 Schneiden
Beim Slicing wird aus einer Teilmenge der Elemente in einem iterierbaren Objekt ein neues iterierbares Objekt erstellt.
Beispiel: fict = ["Tolstoi", „Camus“, „Orwell“, „Huxley“, „Austin“] print(fict[0:3]) >>['Tolstoi', 'Camus', 'Orwell']
Syntax: [Iterierbares Objekt] [[Startindex: Endindex]]
Der Startindex ist der Index, bei dem das Slicing beginnt.
Der Endindex ist die Position des Endindex.
Hinweis: 1. Ein Slice enthält Elemente an der Startindexposition, jedoch keine Elemente an der Endindexposition. 2. Wenn der Startindex 0 ist, kann die Startindexposition leer gelassen werden. 3. Wenn der Endindex der Index des letzten Elements im iterierbaren Objekt ist, können Sie die Position des Endindex leer lassen; 4. Wenn sowohl der Startindex als auch der Endindex leer bleiben, wird das ursprüngliche iterierbare Objekt zurückgegeben.
Kapitel 6 Schleife
Bedeutung der Schleife: Code, dessen Ausführung nicht stoppt, bis eine im Code definierte Bedingung erfüllt ist.
6.1 for-Schleife
Syntax: „für [Variablenname] in [iterierbarer Objektname]: [Anweisung]“
[Variablenname]: ist der Variablenname, der dem Wert jedes Elements im iterierbaren Objekt zugewiesen werden soll;
[Anweisung]: Dies ist der Code, der in jedem Zyklus ausgeführt werden soll.
Funktion:
Eine Schleife, die ein iterierbares Objekt durchläuft.
Beispiel (Verwendung einer for-Schleife zum Durchlaufen von Listenelementen): zeigt = ["GOT", „Narcos“, "Vize"] zur Show in Shows: drucken (zeigen) >>BEKOMMEN >>Narcos >>Vize
Sie können for-Schleifen auch verwenden, um Elemente in veränderlichen und iterierbaren Objekten zu ändern.
Beispiel: tv = ["GOT", „Narcos“, "Vize"] ich = 0 für die Sendung im Fernsehen: neu = tv[i] new = new.upper() tv[i] = neu ich = 1 drucken (Fernsehen) >>['GOT', 'NARCOS', 'VICE']
Sie können auch eine for-Schleife verwenden, um Daten zwischen veränderlichen iterierbaren Objekten zu übergeben.
Beispiel: tv = [„GOT“, „Narcos“, „Vice“] coms = ["Verhaftet", "Entwicklung", "Freunde", "Immer sonnig"] all_shows = [] für die Sendung im Fernsehen: show = show.upper() all_shows.append(zeigen) zur Anzeige in coms: show = show.upper() all_shows.append(zeigen) print(all_shows) >>['GOT', 'NARCOS', 'VICE', 'ARRESTED', 'DEVELOPMENT', 'FRIENDS', 'ALWAYS SUNNY']
6.2 Bereichsfunktion
Bereichsfunktion: Eine integrierte Funktion, die eine Folge von Ganzzahlen erstellt.
Grammatik:
Die Bereichsfunktion akzeptiert zwei Parameter: die Sequenzimpulszahl und die Endzahl.
Die von der Bereichsfunktion zurückgegebene Ganzzahlfolge enthält alle Ganzzahlen vom ersten bis zum zweiten Parameter (mit Ausnahme des zweiten Parameters).
Beispiel (verwenden Sie die Bereichsfunktion, um eine Zahlenfolge zu erstellen und darüber zu iterieren): für i im Bereich(1,11): drucken(i) >>1 ... >>9 >>10
6.3 while-Schleife
while-Schleife: Dabei handelt es sich um eine Schleife, die Code ausführt, solange der Ausdruck „True“ ergibt.
Syntax: „while [Ausdruck]: [Code ausführen]“
„[Ausdruck]“ ist der Ausdruck, der bestimmt, ob die Schleife fortgesetzt wird.
„[Ausführungscode]“ ist Code, der ausgeführt wird, solange die Schleife andauert.
Endlosschleife: Wenn der Ausdruck einer definierten While-Schleife immer „True“ ergibt, wird die Ausführung der Schleife nie gestoppt. Eine Schleife, deren Ausführung nie aufhört, wird auch Endlosschleife genannt.
6.4 break-Anweisung
break-Anweisung: kann zum Beenden der Schleife verwendet werden.
Immer wenn Python auf eine break-Anweisung stößt, wird die Schleife beendet.
Beispiel: qs = ["Wie ist Ihr Name?", „Was ist deine Lieblingsfarbe?“, „Was ist Ihre Suche?“] n = 0 während True: print("Zum Beenden q eingeben") a = Eingabe(qs[n]) wenn a == "q": brechen n = (n 1)%3 >>Geben Sie q ein, um den Vorgang zu beenden >>Wie heißt du?
Bei jedem Durchlauf der Schleife stellt das Programm dem Benutzer eine Frage aus der qs-Liste. Unter diesen ist n die Indexvariable. Jede Schleife weist n den Wert des Ausdrucks (n 1)%3 zu, wodurch das Programm die Fragen in der qs-Liste durchlaufen kann.
6.5 continue-Anweisung
continue-Anweisung: Sie können die Anweisung mit dem Schlüsselwort continue verwenden, um die aktuelle Iteration der Schleife zu beenden und mit der nächsten Iteration fortzufahren.
Beispiel 1: #Erreichen Sie „alle Zahlen von 1 bis 5 außer 3 drucken“ durch die for-Schleife und die continue-Anweisung. für i im Bereich (1,6): wenn ich == 3: weitermachen drucken(i) >>1 >>2 >>4 >>5
Wenn der Wert von i gleich 3 ist, führt das Programm die continue-Anweisung aus, beendet die Schleife jedoch nicht vollständig, wie es das Schlüsselwort break tut, sondern fährt mit der nächsten Iteration fort und überspringt anderen Code, der ausgeführt werden sollte. Wenn i gleich 3 ist, führt Python die continue-Anweisung aus, anstatt 3 auszugeben.
Beispiel 2: #Erreiche „Alle Zahlen von 1 bis 5 außer 3 drucken“ durch die While-Schleife und die Continue-Anweisung. i=1 während i <= 5: wenn ich == 3: ich = 1 weitermachen drucken(i) ich = 1 >>1 >>2 >>4 >>5
6.6 Verschachtelte Schleifen
Verschachtelte Schleifen: Schleifen können auf viele Arten kombiniert werden.
Sie können eine weitere Schleife innerhalb einer Schleife oder sogar eine Schleife innerhalb der hinzugefügten Schleife hinzufügen.
Es gibt keine Begrenzung für die Anzahl der Schleifen, die innerhalb einer Schleife verschachtelt werden können
Eine Schleife, die eine Schleife im Inneren enthält, wird als äußere Schleife bezeichnet.
Verschachtelte Schleifen werden innere Schleifen genannt
Wenn eine verschachtelte Schleife vorhanden ist, durchläuft die äußere Schleife kein einziges Mal und die innere Schleife durchläuft alle Elemente in ihrem iterierbaren Objekt.
Beispiel: #Verwenden Sie zwei for-Schleifen, um alle Zahlen in einer Liste zu allen Zahlen in der anderen Liste hinzuzufügen list1 = [1,2,3,4] list2 = [5,6,7,8] hinzugefügt = [ ] für mich in Liste1: für j in Liste2: hinzugefügt.append(i j) drucken(hinzugefügt) >>[6, 7, 8, 9, 7, 8, 9, 10, 8, 9, 10, 11, 9, 10, 11, 12]
Während die erste Schleife über jede Ganzzahl in der Liste list1 iteriert, iteriert die zweite Schleife über jede Ganzzahl in ihrer eigenen Iterable, addiert sie zur Zahl in list1 und fügt das Ergebnis dann der hinzugefügten Liste hinzu.
6.7 Glossar
Schleife: Ein Codeabschnitt, der so lange ausgeführt wird, bis eine im Code definierte Bedingung erfüllt ist.
Durchquerung: Verwenden Sie eine Schleife, um auf jedes Element in einem iterierbaren Objekt zuzugreifen.
for-Schleife: Eine Schleife, die zum Durchlaufen iterierbarer Objekte wie Zeichenfolgen, Listen, Tupel oder Wörterbücher verwendet wird.
Indexvariable: Der Wert der Variablen ist eine Zahl, die den Index im iterierbaren Objekt darstellt.
while-Schleife: Eine Schleife, die so lange ausgeführt wird, wie der Wert des Ausdrucks True ist.
Endlosschleife: Eine Schleife, die niemals endet.
break-Anweisung: Eine Anweisung mit dem Schlüsselwort break, die zum Beenden der Schleife verwendet wird.
continue-Anweisung: Eine Anweisung mit dem Schlüsselwort continue, mit der die aktuelle Iteration der Schleife beendet und die nächste Iteration gestartet wird.
Äußere Schleife: Eine Schleife, die im Inneren verschachtelte Schleifen enthält.
Innere Schleife: Eine Schleife, die in einer anderen Schleife verschachtelt ist.
Kapitel 7 Module
Die Bedeutung des Moduls:
Um das Lesen und Überprüfen des Programms zu erleichtern, werden große Programme in mehrere Dateien mit Python-Code, sogenannte Module, unterteilt.
7.1 Integrierte Module importieren
Importieren: Bevor Sie ein Modul verwenden, müssen Sie das Modul zunächst importieren. Dies bedeutet, dass Sie Code schreiben müssen, um Python wissen zu lassen, wo das Modul erhältlich ist.
Importsyntax: import[Modulname].
Nach dem Import eines Moduls können Sie dessen Variablen und Funktionen verwenden.
Eingebautes Modul: Es wird mit der Python-Sprache geliefert und enthält viele wichtige Funktionen.
7.2 Andere Module importieren
Modul erstellen
Erstellen Sie einen neuen Ordner auf Ihrem Computer. Erstellen Sie im Ordner eine neue .py-Python-Datei, fügen Sie Code zur .py-Python-Datei hinzu und melden Sie die Datei.
Importieren (Importieren) Das Gleiche wie oben
7.3 Glossar
Modul: Ein anderer Name für eine Python-Datei, die Code enthält.
Integrierte Module: Module, die mit der Python-Sprache geliefert werden und viele wichtige Funktionen enthalten.
Importieren: Schreiben Sie Code, der Python mitteilt, wo das Modul, das Sie verwenden möchten, importiert werden soll.
Kapitel 8 Dokumentation
8.1 Dateischreibvorgang
Der erste Schritt bei der Arbeit mit Dateien besteht darin, die Datei mit der in Python integrierten Öffnungsfunktion zu öffnen.
Die open-Funktion hat zwei Parameter:
Eine Zeichenfolge, die den Pfad zur zu öffnenden Datei darstellt.
Der Dateipfad bezieht sich auf den Speicherort der Datei auf dem Computer. Beispielsweise ist /Users/bob/st.txt der Dateipfad der Datei st.txt. Jedes durch einen Schrägstrich getrennte Wort ist der Name eines Ordners.
Wenn der Dateipfad nur den Namen der Datei enthält (keine durch Schrägstriche getrennten Ordner), sucht Python nach der Datei in dem Verzeichnis, in dem sich das aktuell ausgeführte Programm befindet.
Um Fehler zu vermeiden, wenn das Programm auf verschiedenen Betriebssystemen läuft, sollte zur Erstellung des Dateipfads das integrierte OS-Modul verwendet werden.
Beispiel für ein Betriebssystemmodul: Betriebssystem importieren os.path.join("Benutzer","bob", "st.txt") >>"Benutzer/bob/st.txt
Durch die Verwendung der Pfadfunktion zum Erstellen eines Dateipfads wird sichergestellt, dass dieser auf jedem fehlerhaften System ordnungsgemäß funktioniert.
Stellt den Modus dar, in dem die Datei geöffnet wird.
Der an die Funktion open übergebene Parameter mode bestimmt, welche Vorgänge an der geöffneten Datei ausgeführt werden:
„r“ öffnet die Datei im schreibgeschützten Modus.
„w“ öffnet die Datei im schreibgeschützten Modus. Wenn die Datei bereits existiert, wird die Datei überschrieben. Wenn die Datei nicht existiert, wird eine neue Datei erstellt.
"w "Öffnen Sie die Datei im lesbaren und beschreibbaren Modus. Wenn die Datei bereits existiert, wird die Datei überschrieben. Wenn die Datei nicht existiert, wird eine neue Datei erstellt.
Die Funktion open gibt ein Objekt zurück, das als Dateiobjekt bezeichnet wird und zum Lesen/Schreiben von Dateien verwendet werden kann.
Sie können die Schreibmethode des Dateiobjekts verwenden, um in die Datei zu schreiben, und die Datei über die Schließmethode schließen.
Wird die Datei über die Open-Funktion geöffnet, muss sie über die Close-Methode geschlossen werden.
8.2 Dateien automatisch schließen
Die Syntax zum Öffnen einer Datei mit der with-Anweisung lautet: „mit open([Dateipfad]),[Modus]) als [Variablenname]:[Ausführungscode]“
[Dateipfad] stellt den Speicherort der Datei dar
[Modus] stellt den Modus dar, in dem die Datei geöffnet werden soll
[Variablenname] stellt den Variablennamen dar, der dem Dateiobjekt zugewiesen ist.
[Ausführungscode] ist der Code, der auf die Dateiobjektvariablen zugreifen muss
Beispiel: mit open („st.txt“, „w“) als f : f.write("Hallo von Python!")
Solange es sich noch innerhalb der with-Anweisung befindet, kann auf das Dateiobjekt zugegriffen werden.
8.3 Dateien lesen
Wenn Sie eine Datei lesen möchten, können Sie „r“ als zweiten Parameter der open-Funktion übergeben. Wenn Sie dann die Lesemethode des Dateiobjekts aufrufen, wird ein iterierbares Objekt zurückgegeben, das alle Zeilen der Datei enthält.
8.4 CSV-Dateien
Das Suffix der CSV-Datei ist .csv, das englische Kommas zur Trennung der Daten verwendet (CSV ist die englische Abkürzung für durch Kommas getrennte Werte).
CSV-Dateien werden häufig von Programmierern verwendet, die Berichtssoftware wie Excel verwalten müssen.
Alle durch Kommas getrennten Daten in der CSV-Datei stellen eine Zelle im Bericht dar und jede Zeile stellt eine Berichtszeile dar.
Trennzeichen ist ein Symbol, das zum Trennen von Daten in CSV-Dateien verwendet wird, z. B. ein Komma oder ein vertikaler Strich „|“.
8.5 Glossar
Lesen: Auf den Inhalt der Datei zugreifen.
Schreiben: Daten in der Datei hinzufügen oder ändern.
Dateipfad: Der Speicherort auf Ihrem Computer, an dem die Datei gespeichert ist.
with-Anweisung: Eine zusammengesetzte Anweisung, die automatisch eine Operation ausführt, wenn Python die Anweisung verlässt.
Dateiobjekt: Ein Objekt, das zum Lesen und Schreiben von Dateien verwendet werden kann.
CSV-Datei: Eine Datei mit dem Suffix .csv, die Kommas zum Trennen der Daten verwendet. Wird häufig in Programmen verwendet, die Berichte verwalten.
Trennzeichen: Das Symbol, das zum Trennen von Daten in CSV-Dateien verwendet wird, z. B. Kommas.
Teil 2 Einführung in die objektorientierte Programmierung
Kapitel 9 Programmierparadigmen
Programmierparadigma (Programmparadigma), also Programmierstil.
9.1 Status
Einer der grundlegenden Unterschiede zwischen verschiedenen Programmierparadigmen ist die Behandlung des Zustands.
Der Status ist der Wert seiner internen Variablen, wenn das Programm ausgeführt wird.
Der globale Status ist der Wert der internen globalen Variablen des Programms, wenn es ausgeführt wird.
9.2 Prozedurale Programmierung
Prozedurale Programmierung: Bei diesem Programmierstil müssen Sie eine Reihe von Subventionen schreiben, um ein Problem zu lösen, wobei jeder Schritt den Status des Programms ändert.
Bei der prozeduralen Programmierung speichern wir Daten in globalen Variablen und verarbeiten sie durch Funktionen.
Da der Zustand des Programms in globalen Variablen gespeichert wird, kann es zu Problemen kommen, wenn das Programm größer wird.
Globale Variablen können in mehreren Funktionen verwendet werden und es ist schwierig aufzuzeichnen, wo eine globale Variable geändert wurde. Kann die Datengenauigkeit des Programms ernsthaft beeinträchtigen.
Da das Programm immer komplexer wird, nimmt die Anzahl globaler Variablen allmählich zu. Darüber hinaus muss das Programm ständig neue Funktionen hinzufügen und globale Variablen ändern, sodass das Programm bald nicht mehr wartbar ist.
Prozeduren sind Nebeneffekte der Programmierung, zu denen auch die Änderung des Zustands globaler Variablen gehört.
9.3 Funktionale Programmierung
Funktionale Programmierung: Die kleinste universelle Programmiersprache der Welt.
Die funktionale Programmierung löst die Probleme, die bei der prozeduralen Programmierung auftreten, indem sie den globalen Zustand eliminiert.
Funktionale Programmierer verlassen sich auf Funktionen, die den globalen Status nicht anwenden oder ändern. Der einzige Status, den sie verwenden, sind die an die Funktion übergebenen Argumente.
Vor- und Nachteile
Vorteil: Es beseitigt alle Fehler, die durch den globalen Status verursacht werden (der globale Status existiert in der funktionalen Programmierung nicht).
Nachteile: Einige Probleme lassen sich anhand von Zuständen leichter konzeptualisieren.
9.4 Objektorientierte Programmierung
Das objektorientierte Programmierparadigma löst auch die durch die prozedurale Programmierung verursachten Probleme, indem es den globalen Status eliminiert. Anstelle der Verwendung von Funktionen werden jedoch Objekte zum Speichern des Status verwendet.
Eine Klasse definiert eine Reihe von Objekten, die miteinander interagieren können.
Klassen sind für Programmierer eine Möglichkeit, ähnliche Objekte zu klassifizieren und zu gruppieren.
Jedes Objekt ist eine Instanz einer Klasse.
Wenn eine Klasse definiert ist, sind alle Instanzen der Klasse ähnlich: Sie haben alle die in der Klasse definierten Attribute, aber die spezifischen Attributwerte jeder Instanz sind unterschiedlich.
In Python ist eine Klasse eine zusammengesetzte Anweisung, die einen Header und einen Body enthält.
Syntax: Klasse [Klassenname]: [Codekörper].
[Klassenname] ist der Name der Klasse.
Konvention: Klassennamen in Python beginnen alle mit einem Großbuchstaben und verwenden die Kamel-Fall-Benennung.
CamelCase-Nomenklatur: Das heißt, wenn der Klassenname aus mehreren Wörtern besteht, sollte der erste Buchstabe jedes Wortes groß geschrieben werden (z. B. LikeThis, anstatt durch Unterstriche getrennt zu werden (Namenskonvention für Funktionen)).
[Codekörper] ist der spezifische Code der definierten Klasse.
Der Codekörper einer Klasse kann eine einzelne Anweisung oder eine zusammengesetzte Anweisung sein, die als Methode bezeichnet wird.
Methoden ähneln Funktionen, da sie jedoch in einer Klasse definiert sind, können sie nur für von der Klasse erstellte Objekte aufgerufen werden.
Methodennamen folgen den Benennungsregeln für Funktionen, alle werden in Kleinbuchstaben geschrieben und durch Unterstriche getrennt.
Der Unterschied zwischen Methodendefinition und Funktionsdefinition:
Methoden müssen innerhalb der Klasse definiert werden;
Muss mindestens einen Parameter akzeptieren (außer in Sonderfällen).
Konventionsgemäß heißt der erste Parameter einer Methode immer self.
Wenn Sie eine Methode erstellen, müssen Sie mindestens einen Parameter definieren, denn wenn Sie eine Methode für ein Objekt aufrufen, übergibt Python automatisch das Objekt der aufrufenden Methode als Parameter.
9.5 Glossar
Programmierparadigma: Programmierstil.
Status: Der Wert der Variablen innerhalb des Programms, wenn es ausgeführt wird.
Globaler Status: Der Wert globaler Variablen innerhalb des Programms, wenn es ausgeführt wird.
Prozedurale Programmierung: Dieser Programmierstil erfordert das Schreiben einer Reihe von Schritten zur Lösung eines Problems, wobei jeder Schritt den Status des Programms ändert.
Funktionale Programmierung: Die funktionale Programmierung eliminiert den globalen Zustand durch Funktionsübertragung und löst die Probleme, die bei der prozeduralen Programmierung auftreten.
Nebenwirkungen: Ändern Sie den Wert globaler Variablen.
Objektorientiert: Ein Programmierparadigma, das Objekte definiert, die miteinander interagieren können.
Klasse: Eine Möglichkeit für Programmierer, ähnliche Objekte zu klassifizieren und zu gruppieren.
Methode: Ähnlich einer Funktion, ist jedoch in der Klasse definiert und kann nur für von der Klasse erstellte Objekte aufgerufen werden.
Instanz: Jedes Objekt ist eine Instanz einer Klasse. Jede Instanz einer Klasse hat denselben Datentyp wie andere Instanzen der Klasse.
Instanzvariablen: Variablen, die zu einem Objekt gehören.
Magische Methoden: Methoden, die Python in besonderen Situationen verwendet, beispielsweise bei der Objektinitialisierung.
Instanziierung einer Klasse: Erstellen Sie ein neues Objekt mithilfe einer Klasse.
Kapitel 10 Die vier Säulen der objektorientierten Programmierung
Konzept.
Es gibt vier Hauptkonzepte in der objektorientierten Programmierung:
Verkapselung
Die Kapselung umfasst zwei Konzepte.
Das erste Konzept in der objektorientierten Programmierung besteht darin, dass ein Objekt Variablen (Zustand) und Methoden (zur Änderung des Zustands oder zur Durchführung von Zustandsberechnungen) an einem Ort sammelt – dem Objekt selbst.
Das zweite Konzept bezieht sich auf das Ausblenden der internen Daten einer Klasse, um den direkten Zugriff durch Clientcode (also Code außerhalb der Klasse) zu vermeiden.
Abstrakt
Abstraktion bezieht sich auf den Prozess, „viele Eigenschaften einer Sache zu entfernen, so dass nur ihre grundlegendsten Eigenschaften erhalten bleiben.“ Bei der objektorientierten Programmierung werden Abstraktionstechniken verwendet, wenn Klassen zur Modellierung von Objekten verwendet werden.
Polymorphismus
Polymorphismus bezieht sich auf „die Fähigkeit, verwandte Schnittstellen für verschiedene Grundformen (Datentypen) bereitzustellen“. Schnittstelle bezieht sich auf Funktionen oder Methoden.
erben
Die Vererbung im Programmierkontext ähnelt der genetischen Vererbung. Wenn eine Klasse erstellt wird, kann die Klasse auch Methoden und Variablen von einer anderen Klasse erben.
Die geerbte Klasse wird zur übergeordneten Klasse (übergeordnete Klasse).
Geerbte Klassen werden als untergeordnete Klassen bezeichnet
Wenn eine Unterklasse eine Methode von einer übergeordneten Klasse erbt, können wir die Methode in der übergeordneten Klasse überschreiben, indem wir eine neue Methode mit demselben Namen wie die geerbte Methode definieren. Die Fähigkeit einer Unterklasse, die Implementierung von Methoden zu ändern, die von einer übergeordneten Klasse geerbt wurden, wird als Methodenüberschreibung bezeichnet.
Zusammensetzung: Durch die Kombinationstechnik wird ein Objekt als Variable in einem anderen Objekt gespeichert und die „eigene“ Beziehung kann modelliert werden.
Glossar
Die vier Säulen der objektorientierten Programmierung: Kapselung, Abstraktion, Polymorphismus und Vererbung.
Vererbung: In der Zusammenfassung der genetischen Vererbung erben Kinder Merkmale wie die Augenfarbe von ihren Eltern. Ebenso kann eine Klasse beim Erstellen Methoden und Variablen von einer anderen Klasse erben.
Übergeordnete Klasse: Die Klasse, die geerbt wird.
Unterklasse: Eine Klasse, die von einer übergeordneten Klasse erbt.
Überschreiben von Methoden: Eine Unterklasse ändert die Fähigkeit, von der übergeordneten Klasse geerbte Methoden zu implementieren.
Polymorphismus: bezieht sich auf die Fähigkeit, relevante Schnittstellen für verschiedene Grundformen (Datentypen) bereitzustellen.
Abstraktion: bezieht sich auf den Prozess, bei dem viele Merkmale einer Sache entfernt werden, so dass nur ihre grundlegendsten Eigenschaften erhalten bleiben.
Clientcode: Code außerhalb der Klasse des entsprechenden Objekts.
Kapselung: Die Kapselung umfasst zwei Konzepte. Das erste Konzept besteht darin, dass Objekte in der objektorientierten Programmierung Variablen (Zustand) und Methoden (die zum Ändern des Zustands oder zum Durchführen von Zustandsberechnungen verwendet werden) an einem Ort sammeln – dem Objekt selbst. Das zweite Konzept bezieht sich darauf, die internen Daten einer Klasse vor dem direkten Zugriff durch Client-Code zu verbergen.
Kombination: Durch die Kombinationstechnik wird ein Objekt als Variable in einem anderen Objekt gespeichert und die „eigene“ Beziehung kann modelliert werden.
Kapitel 11 Ausführliche objektorientierte Programmierung
11.1 Klassenvariablen und Instanzvariablen
In Python sind Klassen Objekte. Jede Klasse in Python ist ein Instanzobjekt vom Typ Klasse.
Es gibt zwei Arten von Variablen in einer Klasse:
Klassenvariable
Klassenvariablen gehören zu den Objekten, die Python für jede Klassendefinition erstellt, sowie zu den Objekten, die von der Klasse selbst erstellt werden.
Klassenvariablen werden auf die gleiche Weise wie gewöhnliche Variablen definiert (müssen jedoch innerhalb der Klasse definiert werden) und können über Klassenobjekte oder über mit der Klasse erstellte Objekte zugegriffen werden.
Die Zugriffsmethode ist die gleiche wie bei Instanzvariablen (selbst vor dem Variablennamen hinzufügen).
Klassenvariablen ermöglichen die gemeinsame Nutzung von Daten durch alle Instanzen einer Klasse, ohne dass globale Variablen verwendet werden müssen.
Instanzvariable
Instanzvariablen werden mit der Syntax self.[Variablenname]=[Variablenwert] definiert.
11.2 ist
Wenn es sich bei den beiden Objekten um dasselbe Objekt handelt, gibt das Schlüsselwort „True“ zurück, andernfalls „False“.
Mit dem Schlüsselwort is können Sie überprüfen, ob eine Variable None ist.