第十五節 包裝和授權

2022-08-31 22:15:35 字數 1129 閱讀 4651

包裝:(通過繼承來定製標準型別)

功能:實現對標準型別的屬性的修改,或者對增加新功能

class

list(list):

def

if type(object) is

str:

#else

:

print("

必須是字串")

defshow_medlle(self):#新增新的功能

ind=int(len(self)/2)

return

self[ind]

ll=list("

asd"

)print

(ll.show_medlle())

print(ll)

授權:(通過組合定製open方法)

import

time

class

filehander:

def__init__(self,name,mode='

r',encoding='

utf8'):

self.file=open(name,mode,encoding='

utf8')

self.mode=mode

self.encoding=encoding

defwrite(self,line):

print('

------------>

',line)

t=time.strftime('

%y-%m-%d %x')

self.file.write(

'%s %s

' %(t,line))

def__getattr__

(self, item):

return

getattr(self.file,item)

f=filehander('

ff.log

','w

',encoding='

utf8')

f.seek(0)

#print(f.read())

f.write("

asdasd

")

第十五節Map和File

map 集合 儲存的是鍵值對的對映,每次操作都是鍵值對 一對物件 對映關係,鍵不能重複 鍵和值是對應關係 乙個鍵對應乙個值 map基本用法 1.建立hashmap物件 鍵的泛型,類的泛型 2.新增資料put 鍵不允許重複,如果相同key 後面的值覆蓋前面的值 3.輸出map中內容 putall 新增...

第十五節 基本路由協議

a 什麼是路由?路由 源 本身到目標網路的路徑 路徑不止一條,每一條路徑稱之為一條路由 b 路由器的工作原理 1 路由器處於網路層,所以組成它的部分部分可以是在物理層 資料鏈路層的 2 傳送資料 當乙個資料報進入路由器的時候,會被路由器分解 先解物理層,再解鏈路層,最後解到網路層,然後路由器為根據資...

第十五節 class 類的使用

我們在es5中經常使用方法或者物件去模擬類的使用,雖然可以實現功能,但是 並不優雅,es6為我們提供了類的使用。需要注意的是我們在寫類的時候和es5中的物件和建構函式要區分開來,不要學混了。類的宣告 先宣告乙個最簡單的coder類,類裡只有乙個name方法,方法中列印出傳遞的引數。class cod...