Einsteigerhandbuch für die objektorientierte Python-Programmierung
Python wird in allen Bereichen verwendet, vom Raspberry Pi bis zum maschinellen Lernen. Wenn Sie jedoch an einem großen Projekt arbeiten möchten, müssen Sie wissen, wie Python mit der objektorientierten Programmierung (OOP) arbeitet. Dieser Artikel behandelt die Grundlagen, die Sie kennen müssen.
Wenn Sie nicht gerade programmieren möchten, werfen Sie doch einen Blick auf diese besten Monty Python-Skizzen. Stattdessen 8 der besten Monty Python Flying Circus-Skizzen [Zeug zum Ansehen] 8 der besten Monty Pythons Flying Circus-Skizzen [Zeug zum Ansehen] Sehr Nur wenige andere Comedy-Truppen haben so viel Neuland betreten wie Monty Python, als sie 1969 zum ersten Mal in der BBC ausgestrahlt wurden. Der Humor war nicht nur frisch, gut gela… Mehr lesen? Sie haben schließlich die Sprache inspiriert!
Warten Sie, Python ist keine echte Sprache?
Lassen Sie uns eines klarstellen: Python ist eine echte Programmiersprache, sie ist beliebt und wächst schnell. Nur weil es sich wie Pseudocode liest und Sie Minecraft auf dem Pi damit codieren können Learn Python und Elektronik mit Minecraft Pi Edition Lernen Sie Python und Elektronik mit Minecraft Pi Edition Wollten Sie schon immer Codieren lernen, aber nicht wissen, wo Sie anfangen sollen? Erfahren Sie, wie Sie Minecraft auf dem Raspberry Pi mithilfe von Python und einfacher Elektronik steuern können. Lesen Sie mehr, das bedeutet nicht, dass Sie es als Muttersprache unterlassen sollten.
OOP ist der Eckpfeiler moderner Softwareentwicklung, und Python ist mehr als fähig, mitzuhalten. Es kann ein oder zwei Dinge anders machen als in anderen gängigen Sprachen, aber lassen Sie sich davon nicht abschrecken.
Dieses Tutorial setzt Grundkenntnisse in Python voraus, aber wir werden all die komplexen Dinge auf dem Weg behandeln. Wenn Sie mit Python noch nicht vertraut sind, sollten Sie sich diese Tricks zum Erlernen einer neuen Programmiersprache ansehen. 7 Nützliche Tricks zum Erlernen einer neuen Programmiersprache 7 Nützliche Tricks zum Erlernen einer neuen Programmiersprache Es ist in Ordnung, beim Lernen von Code überwältigt zu sein. Sie werden die Dinge wahrscheinlich so schnell vergessen, wie Sie sie lernen. Diese Tipps helfen Ihnen dabei, all diese neuen Informationen besser aufzubewahren. Lesen Sie mehr oder was ist mit einem einfachen Projekt wie Lesen und Schreiben in Google Sheets mit Python Lesen und Schreiben in Google Sheets mit Python Lesen und Schreiben in Google Sheets mit Python Python mag seltsam und ungewöhnlich erscheinen, ist jedoch einfach zu lernen und zu verwenden. In diesem Artikel werde ich Ihnen zeigen, wie Sie Google Sheets mit Python lesen und schreiben. Weiterlesen ?
Python-Voraussetzungen und Setup
Bevor Sie beginnen, möchten Sie möglicherweise Ihre Python-Entwicklungsumgebung einrichten. Wir werden Python 3.6.5 verwenden, und obwohl Sie ältere Versionen verwenden können, haben Sie weniger Probleme, wenn Sie eine relativ neue Version verwenden.
Erstellen Sie eine virtuelle Umgebung. Lernen Sie, wie Sie die virtuelle Python-Umgebung verwenden. Lernen Sie, wie Sie die virtuelle Python-Umgebung verwenden. Unabhängig davon, ob Sie ein erfahrener Python-Entwickler sind oder gerade erst anfangen, ist es wichtig, wie Sie eine virtuelle Umgebung einrichten jedes Python-Projekt. Lesen Sie mehr, wenn Sie noch keinen haben, und installieren Sie PIP für Python. So installieren Sie PIP für Python unter Windows, Mac und Linux. So installieren Sie PIP für Python unter Windows, Mac und Linux. Viele Python-Entwickler setzen auf ein Tool namens "Python" PIP für Python, um alles einfacher und schneller zu machen. So installieren Sie PIP Lesen Sie mehr, wenn das nicht installiert ist (es wird jedoch mit den meisten modernen Python-Installationen geliefert). Sobald Sie diese Einstellungen vorgenommen haben, können Sie gut los. Lass uns anfangen!
Die Grundlagen von Python: Klassen
EIN Klasse ist der Grundbaustein von OOP. Eine Klasse ist wie ein Plan oder eine Blaupause. Sie definieren Eigenschaften eines Objekts. Was ist objektorientierte Programmierung? In den Begriffen von Layman erläuterte Grundlagen Was ist objektorientierte Programmierung? In den Begriffen von Layman erläuterte Grundlagen Die meisten modernen Programmiersprachen unterstützen das Paradigma der "objektorientierten Programmierung" (OOP). Aber was genau ist OOP und warum ist es so nützlich? Weiterlesen . Wenn Sie beispielsweise über eine Fahrzeugklasse verfügen, kann dies bedeuten, dass es vier Räder, mindestens einen Sitz und einen Motor gibt.
So erstellen Sie eine Klasse in Python:
Klasse Fahrzeug: "" "Diese Klasse definiert Fahrzeuge." "" Pass
Einfach richtig? Hier ist einiges los. Beachten Sie den Kommentar oben in der Klasse. Dies ist ein spezieller Kommentar namens a docstring. Es sollte ein wenig über Ihren Code erklären. Durch die Verwendung der dreifachen Anführungszeichen (“””), Sie sagen Python, dass dies ein Docstring ist.
Das bestehen Schlüsselwort sagt Python nichts zu tun. Es ist ein besonderes Wort, und Sie können es wie ein Todo sehen. Dadurch wird Ihr Code ausgeführt, aber er tut eigentlich nichts.
Wenn Sie diesen Code ausführen, werden Sie feststellen, dass nichts passiert. Du musst instanziieren du Klasse Dies bedeutet effektiv, ein Objekt basierend auf dem in der Klasse definierten Plan zu erstellen. Sie können beliebig viele Kopien mit unterschiedlichen Eigenschaften erstellen. So tun Sie das:
red_car = Fahrzeug ()
Wenn Sie dies erneut ausführen, werden Sie feststellen, dass nichts passiert. Der Code funktioniert ordnungsgemäß, aber Sie haben nicht gesagt, dass Sie etwas Auffälliges tun sollen. Das Fahrzeug class definiert Blaupausen für ein Fahrzeug, und diese letzte Zeile erstellt ein Fahrzeugobjekt und gibt ihm einen Namen rotes Auto.
Es können beliebig viele Objekte erstellt werden:
red_car = Fahrzeug () green_car = Fahrzeug () blue_car = Fahrzeug ()
Fügen wir noch etwas Code hinzu. Fügen Sie eine aufgerufene Methode hinzu __drin__ zum Fahrzeug Klasse:
class Vehicle: "" "Diese Klasse definiert Fahrzeuge." "" def __init __ (self, color = "plain"): "" "Einige benutzerdefinierte Fahrzeugeigenschaften einrichten" "" print ('New car made!') self.color = Farbe red_car = Fahrzeug () green_car = Fahrzeug () blue_car = Fahrzeug ()
Achten Sie besonders darauf __drin__ Methode. Es muss mit zwei Unterstrichen beginnen und enden. Dies ist eine spezielle Methode in Python. Es wird automatisch aufgerufen, wenn Sie ein neues Objekt erstellen. Wenn Sie diesen Code ausführen, werden die Wörter angezeigt “Neues Auto hergestellt!” drei Mal.
Endlich, __drin__ nimmt ein benutzerdefiniertes Argument namens Farbe. Das Gleichheitszeichen und die Zeichenfolge unmittelbar danach weisen Python an, die Farbe auf zu setzen “einfach” wenn nicht angegeben Sie können Ihre Instanzen ändern, um Ihre Fahrzeugfarbe bei der Erstellung festzulegen:
red_car = Fahrzeug (Farbe = 'rot') green_car = Fahrzeug (Farbe = 'grün') blue_car = Fahrzeug (Farbe = 'blau')
Wenn Sie die Autofarbe drucken, sehen Sie, dass jede Instanz eine andere Farbe hat, obwohl alle drei auf dieselbe Spezifikation (die Klasse) festgelegt wurden. Mit Python können Sie auf fast alle Variablen oder Objekte zugreifen. In vielen anderen Sprachen können Sie Folgendes tun:
drucken (red_car.color) drucken (green_car.color) drucken (blue_car.color)
Das funktioniert, weil du zugewiesen hast Farbe zu selbst.farbe. Self ist ein weiteres spezielles Schlüsselwort in Python und bezieht sich auf jede bestimmte Instanz einer Klasse. Wann immer Sie self verwenden, können Sie für diese Instanz eindeutige Daten festlegen oder darauf zugreifen. Das rote Auto hat zum Beispiel eine rote Farbe.
Ändern Sie Ihre __drin__ Methode zum Speichern des Autolärms in einer Variablen:
self.noise = 'Vroooom'
Um das Autolärm auszudrucken, können Sie einfach auf die Lärm variabel wie bei Farbe, aber das ist nicht die beste Idee. Was ist, wenn Sie beim Autofahren möchten, dass ein anderer Code gleichzeitig ausgeführt wird, möglicherweise Code, den Sie noch nicht geschrieben haben? Oder was ist, wenn Sie die Fahrweise eines Autos in der Zukunft ändern möchten? Durch Erstellen eines Funktion (auch bekannt als a Methode), können Sie genau kontrollieren, wie die Dinge funktionieren. Fügen Sie dies unter Ihrem hinzu __drin__ Methode:
def drive (self): drucken (self.noise)
Sie können diese Methode ganz einfach aufrufen:
red_car.drive ()
Wann immer Sie anrufen Fahrt Methode, druckt Python den Sound. Sie können dies erweitern, um alle Aufgaben zu erledigen, aber belassen Sie es für den Moment.
Gut gemacht! Inzwischen sollten Sie die Grundlagen fest im Griff haben. Sie sollten in der Lage sein, eigene Klassen zu erstellen und zu verwenden, von denen jede ihre eigenen einzigartigen Fähigkeiten und Funktionen besitzt.
Was ist mit privaten Variablen in Python??
Private Objekte sind in den meisten anderen Sprachen sehr verbreitet. Sie sind lediglich Variablen oder Funktionen, auf die außerhalb der Klasse nicht zugegriffen werden kann. Es kann sich dabei um Code handeln, der vor der Verwendung besondere Bedingungen erfüllt oder nur für den internen Gebrauch konzipiert ist. Was auch immer der Grund sein mag, Instanzen können nicht auf private Mitglieder zugreifen, außer wenn Sie in Python programmieren.
Python hat keine privaten Mitglieder. Stattdessen ist Python auf ein Ehrensystem angewiesen: “Wir sind alle Erwachsenen einverstanden.” Python-Programmierer verstehen, dass Sie vielleicht mit den sensiblen Interna einer Klasse herumbasteln möchten, und das ist in Ordnung, also sollte nichts wirklich unerreichbar sein.
Python hat jedoch eine anerkannte Konvention zum Markieren bestimmter Variablen als “Privatgelände” im Sinne von “Diese Variable ist für den internen Gebrauch bestimmt und muss wahrscheinlich nicht berührt werden.” Die Konvention besteht darin, Variablennamen mit einem Unterstrich voranzustellen:
_some_secret_variable = 42
Dies ist eine Warnung an andere Programmierer. Python wird Sie nicht daran hindern, auf diesen Zugriff zuzugreifen, aber die Unterstreichung weist Sie darauf hin, dass dies nicht für diese Verwendung gedacht ist und Sie sollten auf eigene Gefahr fortfahren.
Es ist manchmal die Python-Methode, mit versteckten Sachen zu basteln, aber Sie laufen Gefahr, dass die Dinge nicht richtig funktionieren.
Vererbung in Python verstehen
Vererbung ist ein weiterer Weg, um Duplizierungen zu reduzieren und Code wiederzuverwenden. Wenn man an eine Eltern- und Kind-Beziehung denkt, ermöglicht die Vererbung die Kind gemeinsamen Code mit der Elternteil. Lassen Sie uns ein Elektroauto implementieren, das vom Elternteil erbt.
Fügen Sie diesen Code unter Ihrem ein Fahrzeug Klasse:
Elektrofahrzeugklasse (Fahrzeug): "" "Elektrofahrzeugklasse." "" defarge (selbst): print ('Zzz') electric_car = ElectricCar () electric_car.charge () electric_car.noise = 'Whoosh' electric_car.drive ()
Nach dem Elektroauto definiert ist, die Fahrzeug Klasse wird in zwei Klammern angegeben. Das sagt Python das Elektroauto ist ein Kind von Fahrzeug. Dadurch haben Sie Zugriff auf alle Daten und Methoden, die in bereitgestellt werden Fahrzeug.
Das Elektroauto hat seine eigenen speziellen Methoden. Es kann aufgeladen werden (etwas, was andere Fahrzeuge nicht können). Wenn Sie das Geräusch des Autos ändern und dann fahren, können Sie sehen, dass das Elektroauto ein anderes Geräusch von sich gibt und Sie die Antriebsmethode nicht definieren mussten. Dies liegt daran, dass das Laufwerk vom übergeordneten Element geerbt wird.
Erweitern Sie Ihr Python-Wissen noch weiter
Diese Beispiele haben gezeigt, wie einfach OOP in Python sein kann. Wir haben gerade erst die Grundlagen besprochen, aber wenn Sie diese erst einmal verstanden haben, ist der Rest einfach.
Wenn Sie fortfahren möchten, Python zu lernen, oder diese OOP-Fähigkeiten vielleicht in die Praxis umsetzen, werfen Sie einen Blick auf Arrays und Listen in Python oder erfahren Sie, wie Sie mit Python und JavaScript kommunizieren können?
Wenn Sie nach all dem noch mehr wollen, sollten Sie unbedingt diese besten Websites besuchen, um Python zu lernen. Die 5 besten Websites, um Python-Programmierung zu lernen Die 5 besten Websites, um Python-Programmierung zu lernen Möchten Sie Python-Programmierung lernen? Hier sind die besten Möglichkeiten, Python online zu lernen, von denen viele völlig kostenlos sind. Weiterlesen .
Erfahren Sie mehr über: Objektorientierte Programmierung, Programmierung, Python.