37 Stimmen

Python: Gemeinsame Nutzung globaler Variablen zwischen Modulen und Klassen darin

Ich weiß, dass es in Python möglich ist, eine globale Variable modulübergreifend zu nutzen. Ich würde jedoch gerne wissen, inwieweit dies möglich ist und warum. Zum Beispiel,

global_mod.py

x = None

mid_access_mod.py

from global_mod import *

class delta:
    def __init__(self):
        print x

bot_modif_mod.py

import mid_access_mod
import global_mod

class mew:
    def __init__(self):
        global_mod.x = 5

def main():
    m = mew()
    d = mid_access_mod.delta()

Es wird keine ausgegeben, obwohl sich alle Module die globale Variable x teilen. Warum ist das der Fall? Es scheint, dass x in mid_access_mod.py ausgewertet wird, bevor es in bot_modif_mod.py durch mew() zugewiesen wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X