工作小結 常見定製類

2022-08-10 07:48:16 字數 2437 閱讀 8223

雙下方法

__repr__  __str__

__str__方法  必然返回字串

『%s』%(物件) print(str(a)) print

(直接列印物件)都是走類中__str__

%r repr() 實際上都是走repr

repr

class

a:

def__str__

(self):

return

'父類str列印中

' #如果是數字類的 需要str(1) 再返回

def__repr__

(self):

return

'父類repr列印中

'class

b(a):

def__str__

(self):

return

'子類str列印中

'def

__repr__

(self):

return

'子類repr列印中

'a =b()

print('

%s'%(a)) #

子類str列印中

print(a) #

子類str列印中

print(str(a)) #

子類str列印中

print('

%r'%(a)) #

子類repr列印中

print(repr(a)) #

子類repr列印中

如果子類中沒有__str__就先用父類的str  父類沒有str就先用子類的repr

class

a:

def__str__

(self):

return

'父類str列印中

'def

__repr__

(self):

return

'父類repr列印中

'class

b(a):

def__repr__

(self):

return

'子類repr列印中

'a =b()

print('

%s'%(a)) #

父類str列印中

print

(str(a))

class

a:

def__repr__

(self):

return

'父類repr列印中

'class

b(a):

def__repr__

(self):

return

'子類repr列印中

'a =b()

print('

%s'%(a)) 子類repr列印中

class

a:

def__repr__

(self):

return

'父類repr列印中

'class

b(a):

pass

a =b()

print('

%s'%(a)) 父類repr列印中

__del__  如果直接執行del方法是 例如刪除乙個物件 他會將連帶的 物件.f = open()  一塊刪除   但實際上改檔案並沒有關掉,所以需要用到__del__方法  在del時就會呼叫類中的__del__

此時將 關閉檔案的操作放到下面  變成先關閉檔案再刪除物件,完美解決

class

a:

def__del__

(self):

print('

aaa'

) self.f.close()

a =a()

a.f = open('

y.py')

del a

__call__

乙個物件加上()  a()就會執行__call__方法下面的功能,此方法適用於給程式新增一些小功能 簡化了**

__len__

class

a:

def__init__

(self,classes):

self.classes =classes

self.names =

def__len__

(self):

return

len(self.names)

a = a('

xioming')

'ergou')

'ergou')

'ergou')

'ergou')

print

(len(a))

print

(a.names)

print(a.classes)

流程定製的小結

乙個完整的工作流管理系統,我們有了工作流建模工具,工作流引擎,工作監控工具等等,基於此我們發現開發一套比較通用的應用,還是有一定的難度。其中還多東西都是比較死的,當我們在開發乙個新的應用時又要重新開始,可重用性比較差。再有作為乙個產品的話,易用性存在很大的問題。我們需要的是乙個工具,在流程模型建好並...

RuleWizard規則定製小結

一般情況下顯示某乙個節點的資訊,右擊該節點可以檢視節點的相應屬性資訊 例如name,value等 此時就可以利用這些屬性名稱輸出相應的資訊。顯示name name 顯示value value 顯示type type 顯示line line 在需要統計個數的節點新增乙個collector,並且給乙個l...

python定製 python中定製類

1 python中 str 和repr 如果要把乙個類的例項變成 str,就需要實現特殊方法 str classperson object def init self,name,gender self.name name self.gender genderdef str self return p...