Wann werden Klassen in Python verwendet?

silencement
Freigeben: 2019-06-21 13:37:17
Original
4879 Leute haben es durchsucht

Wann werden Klassen in Python verwendet?

Alle Daten in Python sind Objekte. Es bietet viele erweiterte integrierte Datentypen, die leistungsstark und einfach zu verwenden sind. Wann sollten benutzerdefinierte Klassen verwendet werden? Wenn Sie beispielsweise beim Entwerfen einer Person-Klasse keine benutzerdefinierte Klasse verwenden, können Sie Folgendes tun:

person=['mike', 23, 'male']  #0-姓名, 1-年纪, 2-性别
print(person[0], person[1], person[2])
Nach dem Login kopieren

Wie Sie sehen, müssen Sie bei Verwendung der integrierten Typliste Indizes verwenden Referenzmitgliedsdaten, was nicht intuitiv ist. Sie können stattdessen den Typ dic verwenden:

person1={'name':'mike', 'age': 23, 'sex': 'male'}
person2={'name':'hellen', 'age': 20, 'sex': 'female'}
print(person1['name'], person1['age'], person1['sex'])
Nach dem Login kopieren

Auf diese Weise müssen Sie sich die Indizes nicht merken und es ist viel intuitiver. Aber die Syntax des Wörterbuchs ist immer noch etwas umständlich, und es wäre besser, wenn es so referenziert werden könnte: person.name, person.age usw. Dies ist der Vorteil der Existenz benutzerdefinierter Klassen:

class Person:
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex
    def __str__(self): #重载该函数便于测试
        sep = ','
        return self.name+sep+str(self.age)+sep+self.sex
person1 = Person('mike', 23, 'male') 
person2 = Person('hellen', 20, 'female')
print(person1)
print(person2.name, person2.age, person2.sex)
Nach dem Login kopieren

Sie sehen, dass es sehr praktisch ist, Instanzen dieser Klasse zu generieren, solange der Konstruktor dieser Klasse definiert ist, und es ist auch sehr praktisch Um auf Datenelemente zu verweisen, z. B. Es ist viel bequemer, integrierte Typen direkt zu verwenden. Tatsächlich verwendet Python den integrierten Typ dic, um die Speicherung und Referenzierung von Mitgliedern benutzerdefinierter Klassen zu implementieren. Aus dieser Perspektive sind benutzerdefinierte Klassen eine vereinfachte Möglichkeit, integrierte Klassen zu verwenden, und integrierte Typen sind notwendige interne Komponenten von benutzerdefinierte Typen. Da benutzerdefinierte Klassen ihre eigenen Mitgliedsfunktionen definieren oder vordefinierte Methoden überladen können, können benutzerdefinierte Klassen gleichzeitig die Funktionen integrierter Klassen erweitern und eine bessere Simulation realer Dinge ermöglichen. Erstellen Sie beim Programmieren zunächst ein Konzept für die zu simulierende Sache und versuchen Sie dann, das Konzept mithilfe von Klassen zu erfassen. Dies ist der Schlüssel zum objektorientierten Design. Wenn Sie mehrere Objekte desselben Typs generieren müssen, sollten Sie eine benutzerdefinierte Klasse entwerfen, um sie so weit wie möglich zu abstrahieren.

Verwenden Sie benutzerdefinierte Klassen nicht zu oft. Einige Funktionen müssen nur durch eine Funktion definiert werden. Derzeit ist es nicht erforderlich, eine benutzerdefinierte Klasse zu entwerfen.

Das obige ist der detaillierte Inhalt vonWann werden Klassen in Python verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage