牛骨文教育服务平台(让学习变的简单)
博文笔记

python模块atexit与register函数

创建时间:2017-06-21 投稿人: 浏览次数:867

register函数原型

atexit.register(func, *args, **kwargs)

register的作用

register函数位于atexit模块,用于在程序退出时运行,进行必要的清理等,有点像C++的析构函数。

register的使用

在python3中,register有2种方式来注册函数,一种是直接在register中填写函数名,还有一种就是用装饰器语法。

例如对func()函数注册:

  1. register(func) #可以在func后面对func进行传参
  2. @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 
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。