在命名時,通過使用兩個下劃線作為開頭,可以使得這個變數或者函式程式設計私有的,但是這個其實的python的偽私有,實際是python通過名字修改來進行的,python會把這樣命名的變數或者函式名改為_類名__變數名
class a:
__name="hello"
t = a();
#print(t.__name)
#這樣會出現錯誤,錯誤提示說這個變數沒有__name型別
print(t._a__name)
#這裡python實際是給__name改名為_a__name了
import random as r
class fish:
def __init__(self):
self.x = r.randint(0, 10)
self.y = r.randint(0, 10)
def move(self):
self.x -= 1
print("我的位置是:", self.x, self.y)
class godfish(fish):
pass
class shark(fish):
def __init__(self):
#fish.__init__(self) 這裡是呼叫未繫結的父類方法
super().__init__() #使用super函式,和上面的方式一樣,但是更簡單
self.hungry = true
def eat(self):
if self.hungry:
print("我要吃飯了")
self.hungry = false
else:
print("太撐了,吃不下了!")
python第四天,list補充
當我們建立的列表中,元素的排列順序常常是無法 的,因為我們並非總能控制使用者提供資料的順序。這雖然在大多數情況下都是不可避免的,但我們經常需要以特定的順序從呈現資訊。有時候,我們希望保留列表元素最初的排列順序,而有時候又需要調整排列順序。python提供了很多組織列表方式,可根據具體情況選用。1 使...
學習python 第四天
python 迴圈結構 迴圈結構可以輕鬆的控制某件事重複 再重複的發生。在python中構造迴圈結構有兩種做法,一種是for in迴圈,一種是while迴圈。for in迴圈 如果明確的知道迴圈執行的次數或者是要對乙個容器進行迭代 後面會講到 那麼我們推薦使用for in迴圈 用for迴圈實現1 1...
Python學習 第四天
map函式可以對序列中個每個值進行某種批量轉化操作,然後將結果作為迭代器iterator返回,迭代器可以利用for迴圈或者next 函式來訪問每個值。map函式接收兩個引數,乙個是函式f,乙個是iterator,map在iterable的每個元素上依次執行函式f,並把結果作為新的iterator迭代...