Wenn wir Anwendungen in Python schreiben, stoßen wir manchmal auf Situationen, in denen dieselbe globale Variable zwischen mehreren Dateien übergeben wird. Der folgende Artikel stellt Ihnen daher hauptsächlich die Implementierungsmethode für dateiübergreifende globale Variablen in Python vor. Lassen Sie uns gemeinsam einen Blick darauf werfen.
Da in der C-Sprache Variablen zuerst deklariert und dann verwendet werden müssen, können wir eindeutig erkennen, ob die verwendete Variable global oder lokal ist, zum Beispiel:
int a = 5; void test(void) { a = 1; // 没有先声明,所以用的是全局的变量a } void test1(void) { int a; a = 2; // 前面声明了,所以用的是局部变量a,对其所做的修改不会影响全局变量a } void main(void) { printf("before: a = %d\n", a); test(); printf("after test: a = %d\n", a); test1(); printf("after test1: a = %d\n", a); }
In Python müssen Variablen nicht zuerst deklariert werden, sie können direkt verwendet werden.
Implementierung dateiübergreifender globaler Variablen in Python
Das globale Schlüsselwort in Python kann eine Variable als globale Variable definieren, dies ist jedoch der Fall Es ist nicht möglich, auf das Aufrufen globaler Variablen im Modul (py-Datei) und die erneute Verwendung von globalem x in einer anderen py-Datei zuzugreifen, da in diesem py-Modul keine Variable mit dem Namen x vorhanden ist. Daher wird ein undefinierter Fehler gemeldet.
Ausgehend von der Idee des globalen Schlüsselworts können wir, da es in einer Datei wirksam werden kann, einfach ein „Modul zur Verwaltung globaler Variablen“ speziell für globale Variablen definieren
Globale Variable Verwaltungsmodul globalvar.py
#!/usr/bin/python # -*- coding: utf-8 -*- def _init(): global _global_dict _global_dict = {} def set_value(name, value): _global_dict[name] = value def get_value(name, defValue=None): try: return _global_dict[name] except KeyError: return defValue
Globale Variablen a.py festlegen
#!/usr/bin/python # -*- coding: utf-8 -*- import sys import globalvar as gl gl._init() gl.set_value('name', 'cc') gl.set_value('score', 90)
Globale Variablen b.py abrufen
#!/usr/bin/python # -*- coding: utf-8 -*- import globalvar as gl name = gl.get_value('name') score = gl.get_value('score') print("%s: %s" % (name, score))
Hauptprogramm main.py
#!/usr/bin/python # -*- coding: utf-8 -*- import a import b
Führen Sie dann die Hauptprogrammdatei python main.py aus und das Ergebnis ist cc: 90
Verwandte Empfehlungen:
Beherrschen Sie Python vollständig
Python-Implementierung des String-Matching-Algorithmus-Beispielcodes
Analyse der Implementierungsmethoden von erweiterten integrierten Python-Typen
Das obige ist der detaillierte Inhalt vonBeispielanalyse zur Implementierung dateiübergreifender globaler Variablen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!