class SQL(object):def open(self):passdef fetch(self,sql):passdef close(self):passdef __enter__(self):self.open()return selfdef __exit__(self):self.close()# obj = SQL()
# obj.open()
# obj.fetch('select ....')
# obj.close()with SQL() as obj: # 自动调用类中的__enter__方法, obj就是__enter__返回值obj.fetch('xxxx')# 当执行完毕后,自动调用类 __exit__ 方法

Python `__enter__` `__exit__`(with)相关推荐

  1. 解释Python的‘__enter __‘和‘__exit__‘

    本文翻译自:Explaining Python's '__enter__' and '__exit__' I saw this in someone's code. 我在某人的代码中看到了这个. Wh ...

  2. python代码怎么写出色_如何写出更具有Python风格的代码,五分钟教会你!

    我们都喜欢 Python,因为它让编程和理解变的更为简单.但是一不小心,我们就会忽略规则,以非 Pythonic 方式编写一堆垃圾代码,从而浪费 Python 这个出色的语言赋予我们的优雅.Pytho ...

  3. Python类与对象

    2019独角兽企业重金招聘Python工程师标准>>> 1.如何派生内置不可变类型并修其改实例化行为 问题1: 我们想定义一种新类型的元组,对于传入的可迭代对象,我们只保留其中int ...

  4. python语言使用什么语句实现上下文管理协议_Python 技巧探究:上下文管理器和with语句...

    一:前言 Python 里面的 with 语句是被认为是晦涩难懂的特征之一,但是当你窥视它的内部你就会发现这里面并没有什么魔法.事实上它可以帮助我们写一些整洁和可读性高的代码. 那么 with 语句适 ...

  5. Python——with语句、context manager类型和contextlib库

    目录 一.with语句 二.上下文管理器 三.contextlib模块 基本概念 上下文管理协议(Context Management Protocol) 包含方法 __enter__() 和 __e ...

  6. python-oracle,python与oracle(一)基本配置

    软件环境:Arcgis10+Python2.6+Oracle10R2+ cx_Oracle-5.1-10g.win32-py2.6.msi(http://cx-oracle.sourceforge.n ...

  7. Python基本语法_文件操作_读写函数详解

    目录 目录 软件环境 file文件对象 open文件操作 读文件 read读取所有文件内容 readline获取一行内容 readlines读取所有文件内容 readreadlinereadlines ...

  8. python代码案例详解-Python运算符重载详解及实例代码

    Python运算符重载 Python语言提供了运算符重载功能,增强了语言的灵活性,这一点与C++有点类似又有些不同.鉴于它的特殊性,今天就来讨论一下Python运算符重载. Python语言本身提供了 ...

  9. 浅谈 Python 的 with 语句

    王 生辉 和 李 骅宸 : https://www.ibm.com/developerworks/cn/opensource/os-cn-pythonwith/ 前言 with 语句是从 Python ...

最新文章

  1. postmessage 消息接收延迟_微信为什么会突然延迟接收消息?原来是它们搞的鬼!...
  2. sealed关键字用法
  3. C# 面向对象版 Windows挖雷 v0.8 release 非FloodFill算法解
  4. Web前端开发笔记——第二章 HTML语言 第十节 画布标签、音视频标签
  5. 如何理解HTML结构的语义化?
  6. auto.js停止所有线程_使用多线程处理输入的数据
  7. ThreadPoolExecutor源码学习以及观雄哥大佬博客有感
  8. C语言实现贪吃蛇(四)----游戏存档读档(文件操作)
  9. js获取非行间样式(兼容ie和标准浏览器)
  10. 高德地图安卓 拖拽选点_高德地图想再造一个大众点评?
  11. GSCoolink GSV6201 TypeC/DP to HDMI2.1
  12. 变量值互换自定义函数swap()的使用
  13. 赶集网遭遇“倒闭”传闻
  14. 【opencv】鱼眼图像畸变校正——透视变换
  15. 万物互联方显云雄本色
  16. 2012年龙年春节晚会之我见-亲民,团圆,好的社会道德宣扬,总结 编辑
  17. linux应用程序开发题库,Linux应用程序开发练习题ppt课件
  18. 用HBuilder打包iOS App
  19. Java面试题:关于sleep()和write()的简答题
  20. discuz 自定义联盟推广链接案例及百度分享自定义推广链接的方法

热门文章

  1. Python之数据分析(Numpy的数组切片、数组变维、组合与拆分)
  2. Python使用matplotlib绘制正多边形逼近圆周
  3. Python+pandas计算数据相关系数
  4. go 查找模块位置_如何使用Go语言插件功能?
  5. python获取表单数据的代码_使用flask和python从html表单获取表单数据
  6. html下拉框内容变更,Javascript根据另一个下拉框值更改下拉框选项
  7. ipv4改完保存不成功_win7系统没法保存修改后IP地址的解决方法
  8. aj6 stamps storm_曝光! “渣男”Travis Scott的AJ6下周发售,分手后货量大减...
  9. C++之继承探究(七):虚析构函数
  10. android用来显示界面的组件,Android 自学之基本界面组件(上)