zoukankan      html  css  js  c++  java
  • 2019-08-06

    一.atexit退出处理程序

    在程序即将结束之前执行的代码,atexit模块定义了注册和取消清理注册的功能。这样注册的功能在正常解释器终止时自动执行, atexit以与 注册顺序相反的顺序运行这些功能如果你注册AB以及C在解释终止时间,他们将在顺序运行CB, A

    atexit.registerfunc* args** kwargs 

    func注册为要在终止时执行的函数。要传递给func的任何可选参数都必须作为参数传递给 register()可以多次注册相同的函数和参数。

    在正常的程序终止时(例如,如果sys.exit()被调用或主模块的执行完成),所有注册的函数都以后进先出顺序调用。假设通常在较高级别的模块之前导入较低级别的模块,因此必须在以后进行清理。

    如果在执行退出处理程序期间引发异常,则会打印回溯(除非SystemExit被引发)并保存异常信息。在所有退出处理程序都有机会运行之后,将重新引发要引发的最后一个异常。

    该函数返回func,这使得它可以用作装饰器。

    atexit.unregisterfunc 

    从解释器关闭时要运行的函数列表中删除func在调用之后unregister()当解释器关闭时,即使它被多次注册,也保证不会调用func。 unregister()如果先前未注册func,默默无效。

    二.  os.devnull空文件设备

        verbose:bool默认值false,启动详细输出,如果启用 可能无法在多线程上 下文中正常运行

      gevent基于协程的网络库,很容易提升系统的并发行

    MySQL取出字段值相同的数据:select count(*),sno from ecard-error group by sno having count(sno)>1则会显示出现相同学号的次数

    l=[1,3,7,3,2]
    s=set(l)
    k=list(sorted(s,key=l.index))
    print(k)

     

  • 相关阅读:
    sql注入之payload
    cve2019-0708漏洞复现
    xss学习
    kernel panic not syncing
    nodeJS爬虫
    JS刷题自制参考知识
    HTML Cookie
    点击按钮触发div颜色改变的几种写法
    Bootstrap4布局(简要)
    jQuery实现论坛发帖Demo
  • 原文地址:https://www.cnblogs.com/karenaqi/p/11312248.html
Copyright © 2011-2022 走看看