2017-07-18 6 views
-1

Ich habe Code innerhalb einer Klasse. Ich möchte, dass meine Ladevariable für jede Funktion in meiner Klasse zugänglich ist, also lege ich meine Variable direkt in die Klasse. Ich bekomme den Fehler: NameError: Name 'Laden' ist nicht definiert. Erstellen Sie eine Variable, auf die jede Funktion in einer Klasse in Python zugreifen kann.

load = Image.open('obama.jpg') 
def showImg(self): 
    render = ImageTk.PhotoImage(load) 

    img = Label(self, image=render) 
    img.image = render 
    img.place(x=0,y=0) 

def hideImg(self): 
    load.close() 
+0

[Bearbeiten] Ihre Frage die Klassendefinition zu zeigen, in dem der Code, den Sie Leben geschrieben. Geben Sie, wenn möglich, ein Beispiel für den Aufruf der Methode und der Fehlermeldung an, wie sie im Terminal gedruckt werden. - Das heißt, warum auf der Erde ist die Methode definiert 'def hideImg (Selbst):', Ich meine, hat 'Selbst' einen Zweck? – gboffi

Antwort

3

Zugang durch self.<property_name> so in diesem Fall self.load

-2
global load 
load = Image.open('obama.jpg') 
def showImg(self): 
    global load 
    render = ImageTk.PhotoImage(load) 

    img = Label(self, image=render) 
    img.image = render 
    img.place(x=0,y=0) 

def hideImg(self): 
    global load 
    load.close() 
+0

Willkommen bei Stack Overflow! Vielen Dank für dieses Code-Snippet, das sofortige Hilfe bieten kann. Eine richtige Erklärung [würde erheblich verbessern] (// meta.stackexchange.com/q/114762) ihren pädagogischen Wert, indem sie * warum * dies eine gute Lösung für das Problem ist, und es für zukünftige Leser mit ähnlichen, nützlicher machen würde, aber nicht identisch, Fragen. Bitte [bearbeiten] Sie Ihre Antwort, um eine Erläuterung hinzuzufügen und geben Sie an, welche Einschränkungen und Annahmen gelten. –

Verwandte Themen