刻意練習Python DAY12

2021-09-29 07:35:25 字數 2250 閱讀 4007

1.new

>>

>

class

capstr

(str):

def__new__

(cls,string)

: string=string.upper(

)return

str.__new__(cls,string)

>>

> a=capstr(

'i love fish'

)>>

> a

'i love fish'

2.del

>>

>

classc:

def__init__

(self)

:print

('我是__init__方法,我被呼叫了...'

)def

__del__

(self)

:print

('我是__del__方法,我被呼叫了...'

)>>

> cl=c(

)我是__init__方法,我被呼叫了...

>>

>

del c3

>>

>

del c2

>>

>

del cl

我是__del__方法,我被呼叫了.

..

3.算數運算

>>

>

class

new_int

(int):

def__add__

(self,other)

:return

int.__sub__(self,other)

def__sub__

(self,other)

:return

int.__add__(self,other)

>>

> a=new_int(3)

>>

> b=new_int(5)

>>

> a+b-2

>>

> a-b

8

>>

>

class

nint

(int):

def__radd__

(self,other)

:return

int.__sub__ (self,other)

>>

> a=nint(5)

>>

> b=nint(3)

>>

> a+b

8>>

>1+b

2

4.簡單定製乙個計時器

import time as t

class

mytimer()

:def

__init__

(self)

: self.prompt=

'未開始計時!'

self.lasted=

self.begin=

0 self.end=

0def

__str__

(self)

:return self.prompt

__repr__=__str__

#開始計時

defstart

(self)

: self.start=t.localtime(

)print

('計時開始...'

)#停止計時

defstop

(self)

: self.end=t.localtime(

) self._calc(

)print

('計時結束...'

)#內部方法,計算執行時間

def_calc

(self)

: self.lasted=

self.prompt=

'總共執行了'

for index in

range(6

):-self.begin[index]

) self.prompt+=

str(self.lasted[index]

)

python day12 函式高階

1.命名空間 分三種 全域性命名空間,區域性命名空間,內建命名空間。載入順序 內建命名空間 全域性命名空間 區域性命名空間 取值順序 區域性命名空間 全域性命名空間 內建命名空間 2.作用域 作用域就是作用範圍,按照生效範圍可以分為全域性作用域和區域性作用域。全域性作用域 包含 內建命名空間 全域性...

字典與函式(Python day 12)

只要外字典的鍵和內字典的值 a 002 003 for key,val in a.items 開啟一層字典 print key,end for key 1,val 1 in val.items 開啟下一層字典 print val 1,end print 思想是 先把外字典開啟,把外字典的鍵給輸出,然...

從零自學Python day12

集合和字典元組列表相似,也是能裝有多個值 元素 內容我也不知道該咋叫了 的一種資料型別 不同的是,集合中的元素是無序的,集合 set 是乙個無序的不重複元素序列。集合的建立方法是用1.花括號 這個與字典相同,因為字典中是鍵值對,所以不會弄混,值得注意的是,當建立空集合的時候,只能用第二種方法,因為用...