[PYTHON] Ordnungsgemäße Verwendung der Instanzmethode und der Klassenmethode

Ordnungsgemäße Verwendung der Instanzmethode und der Klassenmethode

Dieses Mal werde ich darüber schreiben, wie Instanzmethoden und Klassenmethoden richtig verwendet werden.

Instanzmethode

Verwenden Sie diese Option, wenn Sie das Verhalten für jede Instanz steuern möchten

Klassenmethode

Wird verwendet, um das allgemeine Verhalten in der gesamten Klasse zu steuern

Richtige Verwendung der Instanzmethode und der Klassenmethode am Beispiel der Schule

Schule


class Class:
    #Anzahl der Schüler, die in der gesamten Schule eingeschrieben sind
    all_students_count = 0

    def __init__(self, teacher_name, grade, group):
        self.teachername = teacher_name
        self.grade = grade
        self.group = group
        self.roster=[]

    def enter(self, name):
        #Instanzmethode
        self.roster.append(name)
        Class.all_students_count +=1

    @classmethod
    def reset_students_count(cls, reset):
        #Klassenmethode
        cls.all_students_count = reset

#Aufzeichnung der Einschreibung in der 2. Klasse und 3. Klasse mit Instanzmethode
cl_23 = Class("Yamanaka", 2, 3)
cl_23.enter("Hirasawa")
cl_23.enter("Akiyama")
cl_23.enter("Tainaka")
cl_23.enter("Kotobuki")
cl_23.enter("Manabe")

print("Liste der Teilnehmer in der 2. und 3. Klasse" , cl_23.roster)
print(cl_23.all_students_count)
#Ausgabe:Liste der Teilnehmer in der 2. und 3. Klasse['Hirasawa', 'Akiyama', 'Tainaka', 'Kotobuki', 'Manabe'], 5

#Erfassen Sie eine Gruppe von Teilnehmern pro Jahr mit der Instanzmethode
cl_11 = Class("Toyota", 1, 1)
cl_11.enter("Kaneko")
cl_11.enter("Sato")
cl_11.enter("Shimizu")

print("Liste der Teilnehmer pro Jahr" , cl_11.roster)
print(cl_11.all_students_count)
#Ausgabe:Liste der Teilnehmer pro Jahr['Kaneko', 'Sato', 'Shimizu'], 8

#Setzen Sie alle Anmeldungen mit der Klassenmethode zurück
Class.reset_students_count(0)
print(cl_11.all_students_count)
#Ausgabe:0


Recommended Posts

Ordnungsgemäße Verwendung der Instanzmethode und der Klassenmethode
Über Klasse und Instanz
Python: Klassen- und Instanzvariablen
Python-Klassen- und Instanzvariablen
Python-Klassendefinitionen und Instanzbehandlung
[Python] Unterschied zwischen Klassenmethode und statischer Methode
[Python] -Klasse, Instanz
Klassenmethode statische Methode
Python-Klasse, Instanz
Kamerakalibrierung und Verwendung mit opencv-python [chang method]
Parallelisierung der Klassenmethode
Parallelisierung der Klassenmethode
Methodenüberschreibung und super
Verwenden Sie SQL Alchemy und Multiprocessing
Metaklasse und Instanz
Klassen- und statische Methoden
Verwendung der Methode __call__ in der Python-Klasse
Referenzreihenfolge von Klassenvariablen und Instanzvariablen in "self. Klassenvariablen" in Python
Verschiedene Klassenmethoden und statische Methoden
Verwenden Sie pyrtm und RTM CLI
Globalisierung von Klasseninstanzvariablen
Störungsentwicklung und Simulation Störungsmethode
Kumulative Summen- und Kartoffelmethode
Verwendung und Integration von "Shodan"
Klassenvererbung und Superfunktion
Profil innerhalb einer Methode der Klasse
Ich war süchtig nach falschen Klassenvariablen und Instanzvariablen in Python
Ich bin gestorben, weil ich dachte, eine Python-Klassenvariable sei eine Instanzvariable