Studie aus Python Hour7: Verwendung von Klassen
Studie aus Python Hour7: Verwendung von Klassen
- Als ich versuchte, etwas mit Python zu tun, suchte ich zuerst nach einem Beispielskript und führte es irgendwie aus.
- 7 Stunden Ich möchte die REST-API mit automatischer Ausführung erreichen, das Ergebnis überprüfen und sogar die VM betreiben
- Sie könnten die Klasse bereits "verwenden", aber lassen Sie uns auch über "Design" nachdenken.
Lernmaterialien
- Lernen Sie die Grundlagen in nur einem Tag! Python super Einführung
- https://a.r10.to/hbHMiv
Frühere Beiträge
Umgebung
- Windows
- Python Ver3-Serie
Zweck der Verwendung der Klasse
- Klasse ist eine Grammatik zum Schreiben eines Programms, das einfacher zu verstehen ist, wenn komplizierte Prozesse ordentlich organisiert werden.
- Leicht zu verstehen = Gut lesbar, leicht zu warten, leicht wiederzuverwenden
- Sie können ohne Verwendung von Klassen codieren, dies erfordert jedoch viele Variablen und viele Funktionen, und Sie werden für Ihre Bemühungen nicht belohnt.
- In Bezug auf Variablen wurde "emp_name" ursprünglich (implizit) als Variable für allgemeine Mitarbeiter erstellt. Wenn Sie es daher für Führungskräfte verwenden, kann es später zu einem Fehler im Code kommen, und es gibt Fälle, in denen der Entwickler es unbeabsichtigt verwendet. Sie können Klassen verwenden, um sie zu zwingen, mithilfe der Grammatik des Programms zu folgen.
Über Klassengrammatik
- Klassen werden wie folgt erstellt.
- Klassen- und Methodendefinitionen
- Definition der Daten (Instanzvariablen)
- Eine Klasse ist eine Entwurfszeichnung zum Erstellen einer Instanz, und eine Instanz ist eine daraus erstellte Entität. Daher definiert die Klasse, welche Art von internen Daten und Methoden der Instanz gegeben werden sollen.
- Derzeit sieht die Klasse so aus (keine objektorientierte Beschreibungsmethode).
- Klassen können im Skript definiert werden, kleine Skripte sind jedoch in Ordnung. Es wird jedoch empfohlen, sie als separate Datei zu erstellen und von der Hauptskriptdatei zu trennen.
Importされるファイル(読み込まれる側のファイル)mymodule.py
class MyClass:
def plus(self, a, b):
return a + b
def minus(self, a, b):
return a - b
Zu importierende Datei (auszuführende Datei) sample.py
import mymodule #Deklarieren Sie die zu lesende Datei (keine Erweiterung erforderlich)
my_ins = mymodule.MyClass() #Instanziierung von MyClass
a = my_ins.plus(5, 3) #Verwenden Sie MyClass-Methoden
print(a)
b = my_ins.minus(5, 3)
print(b)
Ausführungsergebnis
C:\script>sample.py
8
2
C:\script>
Programme, die Klassen verwenden
- Bingo-Spielprogramm
- Extrahiere zufällig Zahlen von 1 bis 99 (natürlich keine Duplizierung)
Bingo Klasse bingo.py
import random
class Bingo:
def __init__(self):
self.balls = list(range(1, 100))
def get_ball(self):
random.shuffle(self.balls)
return self.balls.pop()
def has_ball(self):
return len(self.balls) !=0
Zu importierende Datei (auszuführende Datei) bingo_go.py
import bingo
bingo = bingo.Bingo()
while bingo.has_ball():
print(bingo.get_ball())
Ausführungsergebnis
C:\script>bingo_go.py
71
15
69
5
27
76
・
・
・
Werte von 0 bis 99 werden zufällig abgerufen
- Ist der Code nicht ziemlich ordentlich?
- Ich denke, dass die Übergabe von Variablen und Daten durch das Erstellen einer Klasse geklärt wird. Daher ist es nicht erforderlich, die Werte zusätzlicher Variablen zu überprüfen, und das Debuggen ist einfach.
Diese Zusammenfassung
-
Das Erstellen einer Klasse ist einfach, aber organisiert.
-
Das Instanziieren von einer Klasse erleichtert das Arbeiten mit den Daten.
-
Es ist weit entfernt von objektorientierter Codierung, aber ich konnte eine Klasse erstellen, die einfach wiederzuverwenden ist.
-
Ich frage mich, ob eine gute Klasse geschaffen werden kann, indem man entwirft, während man darüber nachdenkt, welche Art von Bewegung man machen möchte.
Für Zitate / Blitzgespräche
- Ich weiß, wie man es benutzt, aber es ist weit davon entfernt, etwas zu machen. .. .. .. .. ..