Ich habe verschiedene Dinge mit Python versucht. Ich habe bisher nur statisch typisierte Sprachen verwendet Anfangs war ich ziemlich verwirrt, aber ich glaube, ich kann jetzt etwas auf Werkzeugebene schreiben ...
Außerdem hatte ich Probleme mit dem Umfang der Variablen. Unterschiede zwischen anderen globalen Variablen, Klassenvariablen und Instanzvariablen.
test_1.py
#!/usr/bin/env python
# coding:UTF-8
#Globale Variablen
global_var = "global"
class Test1(object):
#Klassenvariable
class_var = "class"
def __init__(self):
#Instanzvariable
self.instance_var = "instance"
Globale Variablen sind Variablen, die in Modulen (Dateien?) Behandelt werden, während sie als global bezeichnet werden. Sie können nur den Variablennamen aufrufen, aber wenn Sie den Inhalt ändern, müssen Sie in der Funktion Folgendes deklarieren
test_1.py
def global_var_test(self):
#Globale Erklärung
global gloval_var
#Dann können Sie den Inhalt ändern
global_var = "change"
Ich weiß übrigens nicht, wie ich es von einem anderen Modul aus aufrufen soll ... Ich glaube nicht, dass es so ist, als würde man von einem anderen Modul aus anrufen.
Ich denke, es ist eine gute Idee, Klassenvariablen wie folgt aufzurufen.
test_1.py
def get_class_var(self):
return Test1.class_var
Wenn Sie self.class_var verwenden, wird es beim Aufrufen als Klassenvariable aufgerufen. Nach dem Ersetzen wird die Instanzvariable initialisiert. (Wenn es sich einmal um eine Instanzvariable handelt, wird die Instanzvariable beim nächsten Aufruf aufgerufen.)
Daher ist es besser, das Format von Instanzname.Variablenname später nur für mich selbst auf Instanzvariablen festzulegen.
Recommended Posts