少說話多寫程式碼之Python學習041——類03(類名稱空間 ).txt
阿新 • • 發佈:2018-12-20
先看兩個函式,實現一個數的平方。
def squarter(x):
return x*x
squarter2 = lambda x: x*x
print(squarter(9))
print(squarter2(8))
輸出
81
64
呼叫時,squarter和squarter2可以在全域性函式模組定義,也可以在區域性函式中定義。這樣定義的其實都可稱作程式碼塊。而我們定義的類,其實是一個特殊的程式碼塊,程式碼塊中的變數,方法 只能被這個類的例項所訪問。比如下面我們定義的類,如果需要訪問元素只能通過例項訪問,且不同的例項都可以訪問類裡的元素。
class memberCollectCount: count=0 def init(self): memberCollectCount.count +=1 m1=memberCollectCount() m1.init() print(m1.count) m2=memberCollectCount() m2.init() print(m2.count)
輸出
1
2
這裡是一個執行計數的一個類,每執行init一次,都計數。
再定義個類,
class memberCollectCount2:
count=0
def init(self):
memberCollectCount2.count +=1
都有count和init但是它們屬於不同的類,其實也是屬於不同的名稱空間。 因為Python是解釋執行的,只有在執行的時候才會有名稱空間產生。