python 作用with_即使__init__方法有效,Python中的With语句仍返...
对于具有以下init方法的数据库类:
class DB:
def __init__(self, dbprops):
self.dbprops = dbprops
self.conn = self.get_connection(self.dbprops)
debug("self.conn is %s" %self.conn)
def __enter__(self):
pass
def __exit__(self, exc_type, exc_val, exc_tb):
if not self.conn is None:
self.close()
对于调用它的客户端方法,如下所示:
with DB(self.dbprops) as db:
if not db:
raise Exception("Db is None inside with")
return db.get_cmdline_sql()
输出显示调试消息-因此成功调用了init方法:
File "./classifier_wf.py", line 28, in get_cmdline_mysql
raise Exception("Db is None inside with")
例外:Db在里面是None
更新:修复了enter方法以返回数据库对象的问题.但是需要有关如何调用它的帮助:
def __enter__(self, dbprops):
return DB(dbprops)
用单个参数调用它显然不起作用:
with DB(dbprops) as db:
TypeError: __enter__() takes exactly 2 arguments (1 given)
现在,我不再关注,因为应该自动填写“自我”.
python 作用with_即使__init__方法有效,Python中的With语句仍返...相关推荐
- python定义私有变量的方法_Python类中的 私有变量和私有方法
默认情况下,Python中的成员函数和成员变量都是公开的(public),在python中没有类似public,private等关键词来修饰成员函数和成员变量. 在python中定义私有变量只需要在变 ...
- python使用get和post方法_python爬虫中get和post方法介绍以及cookie作用
首先确定你要爬取的目标网站的表单提交方式,可以通过开发者工具看到.这里推荐使用chrome. 这里我用163邮箱为例 打开工具后再Network中,在Name选中想要了解的网站,右侧headers里的 ...
- python创建线程_多种方法实现 python 线程池
最近在做一个爬虫相关的项目,单线程的整站爬虫,耗时真的不是一般的巨大,运行一次也是心累,,,所以,要想实现整站爬虫,多线程是不可避免的,那么python多线程又应该怎样实现呢?这里主要要几个问题(关于 ...
- python正则化函数_正则化方法及Python实现
正则化有助于克服过度拟合模型的问题.过度拟合是偏差和方差平衡的概念.如果过度拟合,机器学习模型将具有较低的准确性.当我们的机器学习模型试图从数据中学习更多属性时,就会添加来自训练数据的噪声.这里的噪声 ...
- Python中的__init__()方法整理中(两种解释)
解释一:看懂了就不用看第二种了 __init__()方法是Python学习当中重要的基础知识,__init__()方法意义重大的原因有两个.第一个原因是在对象生命周期中初始化是最重要的一步:每个对象必 ...
- 什么是python中子类父类_零基础入门:python中子类继承父类的__init__方法实例
前言: 今天为大家带来的内容是零基础入门:python中子类继承父类的__init__方法实例!具有不错的参考意义,希望在此能够帮助到各位!(喜欢的话记得点赞转发关注不迷路哦) 使用Python写过面 ...
- python中__init__方法_关于python中__init__方法理解
在理解__init__方法之前,我们需要搞明白,什么时候才需要用到的这个方法 什么是__init__? __init__方法在python中是类的初始化,通俗来讲,就是每次只要你去创建一个类的实例对象 ...
- python导包和魔幻方法
魔幻方法 __init__ 在Python中定义类经常会用到__init__函数(方法),首先需要理解的是,两个下划线开头的函数是声明该属性为私有,不能在类的外部被使用或访问.而__init__函数( ...
- oracle数据导入到python,Python导入oracle数据的方法 -电脑资料
作者:Sephiroth 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Python导入oracle数据的方法,涉及Python读取csv文件信息再插入到Oracle数据库的相关技巧,具有一定参 ...
最新文章
- python手机版下载3.7.3-Python 3.7.0 来了!
- 比较器Comparable(内部比较器)和Comparator(外部比较器)
- 在游戏运营行业,Serverless 如何解决数据采集分析痛点?
- linux系统下deepin eclipse不能显示源码报class File Editor Source not found
- python中包的循环导入_具有继承的包中的循环导入依赖项
- Leet Code OJ 8. String to Integer (atoi) [Difficulty: Easy]
- selenium webdriver 启动三大浏览器Firefox,Chrome,IE
- 【IT笔试面试题整理】有序数组生成最小高度二叉树
- xp如何快速锁定计算机,Window XP中快速锁定计算机两法
- Java的getcelltype用法_java getCellType的替代方法
- Android测试提升效率批处理脚本
- php图片上传有黑色背景,php Imagemagick jpg黑色背景
- 了解J1939协议和J1939数据记录仪(车辆工程机械中的黑匣子)
- 用数据分析的手段,看2019年CSDN博客之星总评选
- C#图片处理:生成大尺寸图片,以边框颜色填充
- win10突然复制粘贴用不了了
- 树模型(1)-入门指南
- 图片显示上下有空白的解决办法
- 核电站问题 解题报告
- zz:Android APP Monkey信息自动收集脚本
热门文章
- 将matlab的.m文件打包为独立可执行程序.exe —— 基于Matlab R2015b
- 特征选择(feature_selection)
- vue语法 `${ }` (模版字符串)
- java filter 返回错误消息_利用java filter 实现业务异常拦截 跳转到错误信息提示页面...
- aws iot 连接时间_AWS IoT Core 定价
- hadoop入门-在windows上编译x64位hadoop
- Java 8 - Stream实战
- 深入理解分布式技术 - 分布式调用跟踪
- MySQL-索引优化篇(3)_利用索引优化锁
- Spring Cloud【Finchley】-17 使用Zuul为单个或全部微服务提供容错与回退功能