前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python 钩子函数详解

python 钩子函数详解

作者头像
py3study
发布2020-01-07 20:33:40
1.2K0
发布2020-01-07 20:33:40
举报
文章被收录于专栏:python3python3

1.with 与 __enter__ ,__exit__

代码语言:javascript
复制
    with obj:
        expressment
    #进入with块时调用 obj.__enter__()
    #退出with块时调用 obj.__exit__()

2. class 与__new__,__init__,__del__

创建对象实例时调用__new__(self,...),基本不用。。。 专门用于实例初始化 __init__(self,...)

析构函数__del__,但并不保证在对象存在于解释器退出后的情况下,仍旧能被执行(因为解释器已经退出了)

这三个是python为数不多的不那么王道的钩子

[参考这里]

http://pycoders-weekly-chinese.readthedocs.org/en/latest/issue6/a-guide-to-pythons-magic-methods.html

3.__all___

作为一个高级功能,可以在init.py文件中使用all列表来定义目录以form *语句形式导入时,需要 导出什么。all列表是指出当包(目录—)名称使用from *的时候,应该导入的子模块名称清单。

代码语言:javascript
复制
eg:
/usr/local/lib/python2.7/sqlite3/__init__.py
from dbapi2 import *
/usr/local/lib/python2.7/site-packages/mod_python/__init__.py
__all__ = ["apache", "cgihandler", "psp",
           "publisher", "util", "python22"]

本条摘自

http://ipseek.blog.51cto.com/1041109/795782

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.with 与 __enter__ ,__exit__
  • 2. class 与__new__,__init__,__del__
  • 3.__all___
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档