2014-01-06 75 views
3

如何在Python類中聲明全局變量。我的意思是:如果我有這樣的在Python中聲明全局變量類

class HomePage(webapp2.RequestHandler): 
    def get(self): 
     myvaraible = "content" 
    #do something 

class UserPage(webapp2.RequestHandler): 
    #i want to access myvariable in this class 
+1

我想你想的實例變量。如果你真的需要一個全局變量,不要把它放在課堂上。 – Matthias

回答

1

您也可以使用這個類的變量,這是不是有點清潔的解決方案全局變量:

class HomePage(webapp2.RequestHandler): 
    myvariable = "" 

    def get(self): 
     HomePage.myvariable = "content" 

您可以再次從其他類訪問HomePage.myvariable

要創建一個普通的實例變量使用本:

class HomePage(webapp2.RequestHandler): 
    def get(self): 
     self.myvariable = "content" 
+0

當我這樣做時,當另一個用戶登錄到使用此應用程序時,變量內容會發生變化 –

+3

那麼這就是您想要的 - 靜態或全局變量是共享的。如果你想要不同的值,那麼使用實例變量。你需要下定決心:) – BartoszKP

+0

請問,我該如何使用實例變量 –

3

類聲明變量全球,無論你給它分配

myvariable = None 

class HomePage(webapp2.RequestHandler): 
    def get(self): 
     global myvariable 
     myvariable = "content"