2017-07-18 17 views
-1

我在類中有一些代碼。我希望我的load變量可以被我的類中的任何函數訪問,所以我把我的變量直接放在類中。我收到錯誤:NameError:名稱'load'未定義。創建一個變量可以通過Python中的類中的任何函數訪問

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

[編輯]你的問題,以顯示在你的代碼發佈生活類定義。如果可能的話,請舉例說明如何在終端中打印方法和錯誤消息。 - 那就是說,爲什麼地球上的方法被定義爲「def hideImg(self):',我的意思是,'self'是否有任何目的? – gboffi

回答

3

訪問它通過self.<property_name>所以在這種情況下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

歡迎來到Stack Overflow!感謝您的代碼片段,它可能會提供一些即時的幫助。通過展示*爲什麼*這是一個很好的解決方案,對未來的讀者會有更好的解決方案,這將爲它的教育價值提供一個合適的解釋[//大大提高](// meta.stackexchange.com/q/114762)但不完全相同的問題。請編輯您的答案以添加解釋,並指出適用的限制和假設。 –

相關問題