Artikelverzeichnis
Objektorientierte Grundgrammatik
In Python gibt es fast überall Objekte, und wir können dir
integrierte Funktionen verwenden, um die Methoden in diesem Objekt anzuzeigen.
Definieren Sie eine einfache Klasse (enthält nur Methoden)
Objektorientiert ist eine größere Kapselung, bei der mehrere Methoden in einer Klasse gekapselt werden, sodass über diese Klasse erstellte Objekte diese Methoden direkt aufrufen können!
Klasse definieren
Um eine Klasse zu definieren, die nur Methoden in Python enthält, lautet die Syntax wie folgt:
class 类名:
def 方法1(self,参数列表):
pass
def 方法2(self,参数列表):
pass
Das Definitionsformat der Methode ist das gleiche wie das der zuvor erlernten Funktion. Der erste Parameter in der Methode muss sein self
. Bitte merken Sie sich ihn zunächst und führen Sie ihn später ein self
. Klassennamen müssen der oberen CamelCase-Namenskonvention folgen.
Erstellen Sie ein Instanzobjekt
Nachdem eine Klasse definiert wurde, muss diese Klasse zum Erstellen eines Objekts verwendet werden. Die Syntax lautet wie folgt:
对象变量名 = 类名()
erster objektorientierter Code
brauchen
Das Kätzchen isst gerne Fisch und möchte Wasser trinken.
analysieren
- Definieren Sie eine Katzenklasse
Cat
. - Definieren Sie zwei Methoden
eat
unddrink
. - Nach Bedarf – es müssen keine Eigenschaften definiert werden.
class Cat:
"""这是个猫类"""
def eat(self):
print("小猫在吃东西")
def drink(self):
print("小猫在喝水")
tom = Cat() # 创建了一个Cat对象
tom.eat()
tom.drink()
hello_kitty = Cat() # 又创建了一个新的Cat对象
hello_kitty.eat()
hello_kitty.drink()
Denken:
tom
Ist undhello_kitty
dasselbe Objekt?
Selbstgebrauch
Eigenschaften zu Objekten hinzufügen
Python unterstützt dynamische Attribute. Wenn ein Objekt erstellt wird, 对象.属性名 = 属性值
können Sie dem Objekt einfach ein Attribut hinzufügen, indem Sie es direkt verwenden.
tom = Cat()
tom.name = 'Tom' # 可以直接给 tom 对象添加一个 name 属性
Diese Methode ist praktisch, es wird jedoch nicht empfohlen, auf diese Weise Eigenschaften zu Objekten hinzuzufügen.
Der Begriff des Selbst
Welches Objekt die Methode aufruft, self
wer in der Methode referenziert wird. Über self.属性名
die Eigenschaften dieses Objekts kann zugegriffen werden; über self.方法名()
die Methode dieses Objekts kann aufgerufen werden.
class Cat:
def eat(self):
print("%s爱吃鱼" % self.name)
tom = Cat()
tom.name = 'Tom' # 给 tom 对象添加了一个name属性
tom.eat() # Tom爱吃鱼
lazy_cat = Cat()
lazy_cat.name = "大懒猫"
lazy_cat.eat() # 大懒猫爱吃鱼
Nachteile des direkten Hinzufügens von Eigenschaften zu Objekten
Im obigen Code erstellen wir zuerst das Objekt und fügen dann das Namensattribut zum Objekt hinzu. Dabei treten jedoch Probleme auf.
tom = Cat()
tom.eat()
tom.anme = "Tom"
Wenn das Programm ausgeführt wird, wird ein Fehler gemeldet:
AttributeError: 'Cat' object has no attribute 'name'
Fehlermeldung: Das „Cat“-Objekt hat kein „Name“-Attribut.
In der täglichen Entwicklung wird nicht empfohlen, Eigenschaften direkt zu Objekten außerhalb der Klasse hinzuzufügen. Welche Eigenschaften das Objekt haben soll, sollten wir in der Klasse kapseln.
Fortgeschrittener Fall
[Python] Python erkennt das Wort-Ratespiel – fordern Sie Ihre Intelligenz und Ihr Glück heraus!
[Python] Verwenden Sie Selenium, um (2023 Blog Star)-Einträge zu erhalten
[Xiaobai muss sehen] Detaillierte Analyse und Codeimplementierung des Python-Wortwolkengenerators
[Xiaobai muss sehen] Python crawlt ein Beispiel für NBA-Spielerdaten
[Xiaobai muss sehen] Python-Crawler-Datenverarbeitung und -visualisierung
Geodatenverarbeitung und Visualisierung mit Geopandas und Shapely (.shp)
Verwenden Sie Selen, um die Daten der Maoyan-Filmliste zu crawlen
Erste Schritte mit Crawlern (4): Der beste Weg, dynamische Webseiten mit Selenium und API zu crawlen
Leitfaden zum Einstieg in Crawler (3): Python-Netzwerkanfragen und gängige Anti-Crawler-Strategien
Erste Schritte mit Reptilien (1): Lernen Sie die Grundlagen und Fähigkeiten von Reptilien
Grundlagen der objektorientierten Python-Programmierung und Beispielcode
Anleitung zum Betrieb von Python-Dateien: Kodierung, Lesen, Schreiben und Ausnahmebehandlung
Verwenden Sie Python und Selenium, um das Crawlen zu automatisieren
Selenium Automation Toolset – Vollständiger Leitfaden und Tutorials
Von den Grundlagen des Python-Webcrawlers bis hin zum eigentlichen Kampf-Tutorial
Tutorial zur Pandas-Datenverarbeitung und -Analyse: von den Grundlagen bis zum tatsächlichen Kampf
Detaillierte Erläuterung häufig verwendeter Datentypen und zugehöriger Vorgänge in Python