python學習筆記(二)—— 對象 異常 模塊 文件

Python教程_600集Python從入門到精通教程(懂中文就能學會)
《零基礎入門學習Python》(小甲魚) P1-53

面向對象:封裝、繼承、多態

先有一個,然後創建多個對象

封裝

類的三要素:類名(大駝峯)、屬性、方法。
dir() 查看所有屬性和方法。

class 類名:                   #簡單類,只含方法
	def 方法(self, 參數列表):

對象變量 = 類名()              #創建對象

創建對象自動調用初始化方法,初始化對象,定義實例屬性。

內置方法:
__init__
	self.屬性    #定義屬性
__del__         #自動銷燬
__str__

一個對象的屬性可以是另一個類創建的對象。
定義屬性時,不知道如何設置初始值,可設爲None

私有屬性、私有方法:
__屬性
__方法():

內部使用,外部不能。但python是僞私有

繼承

子類class 子類(父類):擁有父類class 父類:的所有屬性和方法。
子類不能訪問/調用父類的私有屬性/方法。父類內部可以。
子類通過調用父類公共方法可以間接訪問/調用父類的私有屬性/方法。

方法重寫

在子類中定義同名的方法,調用的將是重寫方法。

方法擴展

重寫、super().方法、子類特有代碼

多繼承

class 子類(父類1, 父類2, ……)
有多個父類同名方法,按照從左到右的順序。__mro__查看順序

多態

在子類中繼承和重寫父類方法,使不同的子類對象調用相同的父類方法,但產生不同的結果。

類方法

類是特殊的對象,類對象只有一個,可以創建多個實例對象。

@classmethod
def 類方法(cls):
	代碼

靜態方法

不訪問屬性,也不調用方法。

@staticmethod
def 靜態方法():
	代碼

__new__ object基類提供的內置靜態方法:在內存中爲對象分配空間;返回對象的引用。

異常

try:
	嘗試執行的代碼塊
except 錯誤類型1:
	執行代碼
except (錯誤類型2, 錯誤類型3):
	執行代碼
except Exception as result:
	執行代碼
else:
	沒有異常的代碼
finally:
	無論是否異常的代碼

模塊

import 模塊1
import 模塊2
import 模塊 as 別名(大駝峯)
from 模塊 import *  #導入所有,可直接使用工具
from 模塊 import 工具

所有python文件都是模塊,所有沒有縮進的代碼都會被執行。

導入模塊、定義變量、類、函數等
def main():
	代碼
if __name__ == "__main__":
	main()

只在測試時被執行,導入時不執行。
包:多個模塊和__init__.py(從當前目錄導入的模塊列表)。

文件

file = open ("XXX") r只讀 w只寫(覆蓋,創建) a追加(創建)
file.read file.readline 本質是移動指針
file.seek 修改指針
file.write file.writelines
file.close
with open() as XX 不用考慮close

OS模塊

os.rename remove listdir mkdir rmdir getcwd chdir pathisdir
os.path.basename dirname

pickle模塊

序列化 反序列化
一般用來存放數據
dump 將數據導入文件中
load 將文件讀出

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章