建造者模式,也是一种创建新对象的设计方法,和C++中的虚函数很类似,但是用到了python自身的虚基类ABCMeta。1.应用场景:某个类中的函数较多,且实现比较复杂,很多时候需要继承的子类重载或者重新定义逻辑;2.背景基础:由于用到python中虚函数,需要了解abc模块中的ABCMeta和python中类创建对象时的__metaclass__属性含义。一般地,在某个类中如果定义__metaclass__=something时,简单地说是,创建对象时,会
系统 2019-09-27 17:52:26 1868
#下载一个网页importrequestsimportreurl='https://www.biquge5200.cc/14_14621/'#模拟浏览器发送http请求response=requests.get(url)#编码方式response.encoding='utf-8',如果下载下来的网页内容有中文乱码现象就需要加上这一句话#网页源码html=response.text#[0]取列表下第0个元素.#eg:title的输出结果为:['斗神狂飙无弹窗
系统 2019-09-27 17:52:18 1868
#-*-coding:utf-8-*-importsys,os'''将当前进程fork为一个守护进程注意:如果你的守护进程是由inetd启动的,不要这样做!inetd完成了所有需要做的事情,包括重定向标准文件描述符,需要做的事情只有chdir()和umask()了'''defdaemonize(stdin='/dev/null',stdout='/dev/null',stderr='dev/null'):'''Fork当前进程为守护进程,重定向标准文件描述
系统 2019-09-27 17:51:55 1868
Python实现Mysql数据统计的实例代码如下所示:importpymysqlimportxlwtexcel=xlwt.Workbook(encoding='utf-8')sheet=excel.add_sheet('Mysql数据库')sheet.write(0,0,'库名')sheet.write(0,1,'表名')sheet.write(0,2,'数据条数')db=pymysql.connect('192.168.1.74','root','123
系统 2019-09-27 17:51:52 1868
2019-09-18-21:11:24(初学者不会学博客,望大家见谅见谅)今天学的内容是有关list.、dict、set集合的使用方法和注意事项list和dict在循环中不可删,而且list在迭代输出时进行删除是会导致索引跟着改变所以一般list不在循环过程中进行删除list和dict要进行删除时,应该把要删除的记录到另一个列表中,然后在进行删除深浅拷贝:浅拷贝只拷贝第一层的内容,而深拷贝是全部内容都进行了拷贝下面是总结的内容:一.重要知识点1.str.j
系统 2019-09-27 17:51:29 1868
Python:1.print()函数:打印字符串2.raw_input()函数:从用户键盘捕获字符3.len()函数:计算字符长度4.format(12.3654,'6.2f'/'0.3%')函数:实现格式化输出5.type()函数:查询对象的类型6.int()函数、float()函数、str()函数等:类型的转化函数7.id()函数:获取对象的内存地址8.help()函数:Python的帮助函数9.s.islower()函数:判断字符小写10.s.spp
系统 2019-09-27 17:50:54 1868
说起Python强大的地方,你可能想到是它的优雅、简洁、开发速度快,社区活跃度高。但真正使得这门语言经久不衰的一个重要原因是它的无所不能,因为社区有各种各样的第三库,使得我们用Python实现一个东西实在是太简单了,你经常会看到几行代码实现爬虫,10行代码实现人脸识别,虽然有些夸张,但确实就是有这样的库帮你把所有的繁文缛节全部封装了,最后给你开放一个优雅的API。今天给你推荐的这个库叫“FuckIt.py”,名字一看就是很黄很暴力的那种,作者是这样介绍它的
系统 2019-09-27 17:50:33 1868
元类编程装饰器任何时候你定义装饰器的时候,都应该使用functools库中的@wraps装饰器来注解底层包装函数.因为一个普通装饰器作用在某个函数上时,这个函数的重要的元信息比如名字、文档字符串、注解和参数签名都会丢失。但是@wraps不会。importtimefromfunctoolsimportwrapsdeftimethis(func):'''Decoratorthatreportstheexecutiontime.'''@wraps(func)de
系统 2019-09-27 17:50:24 1868
Ruby和Python太相似了,取舍大部分都是个人喜好上的原因。比如我就觉得Python的“Thereisonlyonewaytodoit.”比Ruby的“Therearemanywaystodoit.”要好,这不光是考虑团队协作的问题,更重要的是自己能很快明白自己三个月前写的没有任何注释的代码是在干什么。当然也有很多人觉得自由和灵活要比可读性来的重要,所以我说这个是个人喜好的原因。客观上的Ruby比Python的优势我想到的有这么几个:Block应该是语
系统 2019-09-27 17:48:04 1868
1.首先定义一个log文件#-*-coding:utf-8-*-importosimporttimeimportloggingimportsyslog_dir1=os.path.join(os.path.dirname(os.path.dirname(__file__)),"logs")today=time.strftime('%Y%m%d',time.localtime(time.time()))full_path=os.path.join(log_di
系统 2019-09-27 17:47:58 1868