物件導向程式設計
類定義class hello:
class是定義類的關鍵字
hello是類名,簡易一般首字母大寫
類定義可以用來例項化物件
簡單來說就是類可以通過例項化來將類變成乙個物件
輸入:
class car:
def info(self):
print('this is a car')
if __name__=='__main__':
car = car()
car.info()
輸出: this is a car
然而實際上就算不進行例項化,也是可以達到同樣效果。
但是在執行之後我遇到了問題,
即:括號裡面需要實參(哪怕根本不需要實參)
輸入:
class car:
def info(self):
print('this is a car')
if __name__=='__main__':
car.info(1)
輸出: this is a car
輸入:
class car:
def info(self):
print('this is a car')
if __name__=='__main__':
car.info()
輸出: typeerror: info() missing 1 required positional argument: 'self'
類成員和例項成員
建構函式
假如你構造了乙個類,而在這個類下面有乙個
def __init__(self):
這就是建構函式。
self.
輸入:
class abc:
def __init__(self, ab):
self.a = ab
if __name__ == '__main__':
abc = abc(5)
print(abc.a)
輸出: 5
在類進行例項化時,類之後需要有引數,否則會報錯
輸入:
class abc:
def __init__(self, ab):
self.a = ab
if __name__ == '__main__':
abc = abc()
print(abc.a)
輸出: typeerror: __init__() missing 1 required positional argument: 'a'
建構函式下所定義的例項變數可以在該類中所有方法中正常使用
私有成員與公有成員
——正常來說,這是一種訪問保護機制,只是python對這個東西並不是很嚴格。
在定義累的屬性時,在屬性前面增加「__」兩個下劃線,則表示其為一種私有屬性
即:不能在類之外,檢視該變數是什麼
資料結構課上筆記2
今天繼續說明了一些基本概念,講解了時間空間複雜度。對於概念的掌握也很重要 元素之間的關係在計算機中有兩種表示方法 順序映像和非順序映像,由此得到兩種不同的儲存結構 順序儲存結構和鏈式儲存結構。順序 根據元素在儲存器中的相對位置表示關係 鏈式 借助指標表示關係 資料型別 是乙個值的集合和定義在這個值集...
資料結構課上筆記6
本節課介紹了單鏈表的操作實現細節,介紹了靜態鍊錶。鍊錶帶頭的作用 對鍊錶進行操作時,可以對空表 非空表的情況以及 對首元結點進行統一處理,程式設計更方便。下面給出帶頭的單鏈表實現思路 按下標查詢 判斷非法輸入,當 1 p l next j 1 while p j i return 按值查詢 p l1...
資料結構課上筆記12
一般二叉樹 將其每個結點與完 全二叉樹上的結點相對照,儲存在一 維陣列的相應分量中。最壞情況 樹退化為線性後 深度為 k 的且只 有 k 個結點的右單支樹需要 長度為2 k 1 的一維陣列。lchild和rchild都是指向相同結構的指標 在 n 個結點的二叉鍊錶中有 n 1 個空指標域。typed...