1. 程式人生 > >python 類中變數 和區域性變數和全域性變數

python 類中變數 和區域性變數和全域性變數

1.類中初始化變數

class dig():
    def __init__(self,x,y):
        self.x=x
        self.y=y
    def pd(self,r):
        s=self.x+self.y+z+r #self.z=self.x+self.y+self.r AttributeError: dig instance has no attribute 'r'
        f=self.x+self.y+y+r  #NameError: global name 'y' is not defined        print s
        print f

pdc=dig(1,3)



pdc.pd(4)

__init__方法中初始化的變數,為賦值時。例項化時必須賦值

2.類的繼承

z=2
class dig:
    def __init__(self,x,y):
        self.x=x
        self.y=y
    def pd(self,r):
        s=self.x+self.y+z+r  #self.z=self.x+self.y+self.r AttributeError: dige20instance has no attribute 'r'
        print s

class pdg(dig):   
    def __init__(self,x,y,j):
        dig.__init__(self,x,y)   #父類中變數需初始化,子類中沒有__init__函式,子類也會自動繼承父類中的變數(屬性)


        self.j=j

    '''  
    def __init__(self,x,y,j):
        dig.__init__(self,x,y)
        self.j=j
    '''

    def jc(self,j):
        dig.pd(self,j)
pdd=pdg(1,2,4)
pdd.jc(9)

14
[Finished in 4.1s]

相關推薦

python的self參數cls參數

ini ls參數 普通 直接 CM 更多 class pytho IV 1. self表示一個類的實例對象本身。如果用了staticmethod就無視這個self了,就將這個方法當成一個普通的函數使用了。 2. cls表是這個類本身。 # 代碼為證 class A

Python的單下劃線雙下劃線的區別

#"單下劃線" 開始的成員變數叫做保護變數,意思是隻有類物件和子類物件自己能訪問到這些變數; #"雙下劃線" 開始的是私有成員,意思是隻有類物件自己能訪問,連子類物件也不能訪問到 #-*-coding:utf8-*- class father(): def __init

Python的"私有欄位""私有屬性"

@staticmethod def Forward(): print u'開始向前進'#coding:utf-8 class Car: # 下面是靜態欄位 memo = u'車輛具有出廠合格證' def __init__(self, brand, model, sp

python 變數 區域性變數全域性變數

1.類中初始化變數 class dig():     def __init__(self,x,y):         self.x=x         self.y=y     def pd(self

【轉】pythonsuper()__init__()的區別

【轉】python類中super()和__init__()的區別 單繼承時super()和__init__()實現的功能是類似的 class Base(object): def __init__(self): print 'Base create' class child

python學習(五):Pythonsuper()__init__()的關係

1.單繼承時super()和__init__()實現的功能是類似的 class Base(object): def __init__(self): print 'Base create' class childA(Base): def __init__(sel

作業系統編譯器如何識別全域性變數區域性變數

作業系統,只管排程程序,執行緒編譯器 根據程式語言的定義,確定變數的作用於,儲存型別,生命週期! 定義在函式外部的變數,只有檔案靜態變數,和外部變數 外部變數,是實實在在的全域性變數,不論作用域還是生命週期。 靜態變數是區域性作用域的,生命週期為,程式的生命週期

python __slots__  @property

slots 將字串屬性名稱順序賦值給特殊的__slots__類屬性,就可以限制類的例項將有的合法屬性集。這個比較簡單,例如:>>> class people(object): ... __slots__ = ['age', 'name’]限制了peo

JS全域性變數VARTHIS--在函式內部,加var是區域性變數,不加是全域性變數

JS全域性變數VAR和THIS 2011-05-23 21:43 很多人都覺得在javascript宣告一個變數,加var和不加var沒有什麼區別,實際上是一個錯誤的觀點,如果在函式外面,也就是說在window區域加不加var確實是一樣,因為都會是全域性變數的效果,

Python的屬性方法總結

類中的屬性分為: 例項屬性 類屬性 類中的方法分為: 例項方法 類方法 靜態方法 類中的屬性 例項屬性: 定義:在類的方法中定義的變數 使用:建立例項物件的時候被建立,能被例項呼叫,無法被類呼叫,可以

python 通過一個方法獲取另一個方法變數

1.在進行介面自動化測試過程中,經常出現介面資料的互相呼叫,如一些操作需要呼叫登陸之後返回的session或者token,下面同個簡單的方法進行講解 class A(): def a_add_b(self): a=10 b=20 self.S=a+b print (self

python的self引數cls引數

1. self表示一個類的例項物件本身。如果用了staticmethod就無視這個self了,就將這個方法當成一個普通的函式使用了。2. cls表是這個類本身。# 程式碼為證 class A(object): def func1(self): prin

派生的構造函數析構函數

png truct style call called 調用 AI AS col 1 class base_class{ 2 public: 3 base_class(){ 4 cout<<"base_class constructor

python 屬性 、實例屬性,可變數據結構作為屬性需要註意的地方

新的 tool gpo 聲明 info 必須 電影 title img 有一個大笨豬,按java寫觀察者模式,java寫得是直接在類名下聲明一個實例屬性(不加static的),他直接翻譯成python後,也是直接寫在類名下面,這就是大坑了。 java裏面在類名下面聲明的

關於靜態成員函數靜態成員變量的知識點

out 所有 bubuko his 其他 結果 png ati 關於 類中的靜態成員函數: 1.函數的行為對所有派生類都一致時,可以聲明為靜態。 2.因為靜態成員函數只跟類有關跟類的實例無關,因此它不需要this指針 3.靜態成員函數由於是不與任何對象相關聯的,所以是沒有t

Java序列化的方式、object的方法、介面抽象的區別、ArrayList在迴圈過程刪除

Java序列化的方式 a.是相應的物件實現了序列化介面Serializable,這個使用的比較多,對於序列化介面Serializable介面是一個空的介面,它的主要作用就是標識這個物件時可序列化的,jre物件在傳輸物件的時候會進行相關的封裝。 b.Externlizab

selenium+python自動化 讀取文字屬性值讀取文字值

<body> <span class="textbox" eid="cityUpdate" style="width: 278px; height: 22px;"> <input type="text" autocomplete="of

有關Java實體get、set方法有參無參構造方法的個人見解。

結論:(總的來說,get和set方法就是為了能以得到和設定實體類中的私有屬性值,而一個類中至少要有一個構造方法,當沒有人為新增的時候,編譯器會自動加入一個隱式的無參構造方法,當有人為新增時,編譯器就不會自動添加了。無參構造方法的作用是為了比較方便的new出一個物

C++的static資料成員static成員函式

引言 在看C++原始碼中,我們經常會看到在類中定義的static資料成員,以及static成員函式。這時我們不禁會想: 為什麼要這樣?(why) 代表什麼含義?(what) 怎樣使用他們?

Intellij IDEAHibernate建立的資料,無法發現table

積累,小白也能成為大神 最近在用spring整合hibernate寫東西的時候,突然出現這麼一個奇葩的問題。在寫*.hdm.xml中,對映表的時候,表上面有紅線。滑鼠放上去提示無法發現table。根據提示很明顯可以猜測出來,是因為類和資料庫沒有關聯,但