目录python单例模式1、什么是单例模式2、__new__方法实现3、装饰器实现4、模块实现5、共享属性实现6、元类实现python单例模式1、什么是单例模式单例模式(SingletonPattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场。比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个AppConfig的类来读取配置文件的信息。如果在
系统 2019-09-27 17:55:32 1791
我们在做工作中经常会使用到json模块,今天就简单介绍下json模块什么是jsonJSON,全称为JavaScriptObjectNotation,也就是JavaScript对象标记,它通过对象和数组的组合米表示数据,构造简洁但是结构化程度非常高,是一种轻量级的数据交换格式。json模块在python中可以作为数据解析json对象和数组在JavaScript语言中,一切都是对象。任何支持的类型都可以通过JSON来表示,例如字符串、数字、对象、数组等,但是对
系统 2019-09-27 17:55:20 1791
__str__的用法在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做“魔法”方法当使用print输出对象的时候,只要自己定义了__str__(self)方法,那么就会打印从在这个方法中return的数据e.g1classCat:"""定义了一个Cat类"""#初始化对象def__init__(self,new_name,new_age):self.name=new_nameself.age=new_agedef__str__
系统 2019-09-27 17:55:09 1791
当我们在写程序的时候,我们需要通过测试来验证程序是否出错或者存在问题,但是,编写大量的测试来确保程序的每个细节都没问题会显得很繁琐。在Python中,我们可以借助一些标准模块来帮助我们自动完成测试过程,比如:unittest:一个通用的测试框架;doctest:一个更简单的模块,是为检查文档而设计的,但也非常适合用来编写单元测试。下面,笔者将会简单介绍这两个模块在测试中的应用。doctestdoctest模块会搜索那些看起来像是python交互式会话中的代
系统 2019-09-27 17:55:04 1791
1:找出字符串s="aaabbbccceeefff111144444"中,字符出现次数最多的字符(1)考虑去重,首先将字符串进行过滤去重,这样在根据这些字符进行循环查询时,将会减少循环次数,提升效率。但是本人写的代码较为臃肿,有更好的希望留言评论str='a1fsfs111bbbcccccvvvvvnnnnboooooosssnb'classCountvalue():defcountvalue(self,str1):'''利用set自身的去重功能:para
系统 2019-09-27 17:54:54 1791
先来说一说HTTP的异常处理问题。当urlopen不能够处理一个response时,产生urlError。不过通常的PythonAPIs异常如ValueError,TypeError等也会同时产生。HTTPError是urlError的子类,通常在特定HTTPURLs中产生。1.URLError通常,URLError在没有网络连接(没有路由到特定服务器),或者服务器不存在的情况下产生。这种情况下,异常同样会带有"reason"属性,它是一个tuple(可以
系统 2019-09-27 17:54:51 1791
1、捕获摄像头和实时显示importcv2importnumpyasnpimportpickleimportmatplotlib.pyplotaspltcap=cv2.VideoCapture(0)whileTrue:ret,frame=cap.read()#Ouroperationsontheframecomeheregray=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)#Displaytheresultingframec
系统 2019-09-27 17:54:46 1791
一、内置函数下面简单介绍几个:1.abs()求绝对值2.all()如果iterable的所有元素都为真(或者如果可迭代为空),则返回True3.any()如果iterable的任何元素为真,则返回True。如果iterable为空,则返回False4.callable()如果object参数出现可调,则返回True,否则返回False5.divmod()以两个(非复数)数字作为参数,并在使用整数除法时返回由商和余数组成的一对数字。对于混合操作数类型,二进制
系统 2019-09-27 17:54:34 1791
前言最近因为工作原因,发现一个Python的时间组件,很好用分享出来!(忘记作者名字了,在这里先感谢了),下面话不多说,来一起看看详细的介绍吧。示例代码:#-*-coding:utf-8-*-'''获取当前日期前后N天或N月的日期'''fromtimeimportstrftime,localtimefromdatetimeimporttimedelta,dateimportcalendaryear=strftime("%Y",localtime())mon
系统 2019-09-27 17:54:18 1791
在处理数据和进行机器学习的时候,遇到了大量需要处理的时间序列。比如说:数据库读取的str和time的转化,还有time的差值计算。总结一下python的时间处理方面的内容。一、字符串和时间序列的转化time.strptime():字符串=>时间序列time.strftime():时间序列=>字符串importtimestart="2017-01-01"end="2017-8-12"startTime=time.strptime(start,"%Y-%m-%
系统 2019-09-27 17:54:04 1791