python模組atexit與register函式
阿新 • • 發佈:2019-01-04
register函式原型
atexit.register(func, *args, **kwargs)
register的作用
register函式位於atexit模組,用於在程式退出時執行,進行必要的清理等,有點像C++的解構函式。
register的使用
在python3中,register有2種方式來註冊函式,一種是直接在register中填寫函式名,還有一種就是用裝飾器語法。
例如對func()函式註冊:
- register(func) #可以在func後面對func進行傳參
- @register
def func():
…
register順序
在程式結束時,先註冊的後執行
一個例子
from atexit import register
def reg_1():
print('I`m reg1 ')
def reg_2(name):
print('I`m reg2 %s'%(name))
def reg_3(name1,name2,name3):
print('I`m reg3 %s %s %s'%(name1,name2,name3))
register(reg_1)
register(reg_2,'reg2')
register(reg_3,'reg3','reg3','reg3')
@register
def reg_4():
print('I`m reg4' )
#輸出:
#I`m reg4
#I`m reg3 reg3 reg3 reg3
#I`m reg2 reg2
#I`m reg1