搜索到与相关的文章
Python

python单例模式的多种实现方法

前言单例模式(SingletonPattern),是一种软件设计模式,是类只能实例化一个对象,目的是便于外界的访问,节约系统资源,如果希望系统中只有一个对象可以访问,就用单例模式,显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。在Python中,我们可以用多种方法来实现单例模式:使用模块使用__new__使用装饰器(decorator)使用元类(metaclass)概念简单说,单例模式(

系统 2019-09-27 17:56:26 1947

Python

python写文件

写文件f=open('url.txt','a')#若是'wb'就表示写二进制文件f.write(response.url+'\n')f.close()

系统 2019-09-27 17:55:55 1947

Python

详解python列表(list)的使用技巧及高级操作

1、合并列表(extend)跟元组一样,用加号(+)将两个列表加起来即可实现合并:In[1]:x=list(range(1,13,2))In[2]:x+['b','a']Out[2]:[1,3,5,7,9,11,'b','a']对于已定义的列表,可以用extend方法一次性添加多个元素:In[7]:x2=[3,6,1]In[8]:x.extend(x2)In[9]:xOut[9]:[1,3,5,7,9,11,3,6,1,3,6,1,3,6,1]需要说明的是

系统 2019-09-27 17:55:28 1947

Python

01_python基础(一)

python学习笔记,打算用五章介绍完python基础语法及基本用法。开发环境:python3.7推荐:https://github.com/jackfrued/Python-100-Dayspython基础语法学习不错。编码规范:PEP8风格指南PEP是PythonEnhancementProposal的缩写,通常翻译为“Python增强提案”。每个PEP都是一份为Python社区提供的指导Python往更好的方向发展的技术文档,其中的第8号增强提案(P

系统 2019-09-27 17:55:19 1947

Python

Python性能优化的20条建议

优化算法时间复杂度算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。减少冗余数据如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。合理使用copy与deepcopy对于dict和list等数据结构的对象,直接赋值使用

系统 2019-09-27 17:54:58 1947

Python

python之mock模块基本使用方法详解

mock简介mock原是python的第三方库python3以后mock模块已经整合到了unittest测试框架中,不用再单独安装Mock这个词在英语中有模拟的意思,因此我们可以猜测出这个库的主要功能是模拟一些东西准确的说,Mock是Python中一个用于支持单元测试的库,它的主要功能是使用mock对象替代掉指定的Python对象,以达到模拟对象的行为既然mock已经被整合到了unittest单元测试框架中,可想而知mock的目的就是为了让我们更好的进行测

系统 2019-09-27 17:54:56 1947

Python

使用python开发vim插件及心得分享

vim有各种强大的插件,这不仅归功于其提供的用来编写插件的脚本语言vimL,还得益于它良好的接口实现,从而支持python等语言编写插件。当vim编译时带有+python特性时就能使用python2.x编写插件,+python3则支持python3.x,可以使用vim--version来查看vim的编译特性。要使用python接口,可以用:hpython来查看vim提供的帮助文档,本文做一个简单的介绍。我们都知道在vim里可以执行bash命令,只需要:!c

系统 2019-09-27 17:54:51 1947

Python

python实现常见算法

常见算法:一、排序引入1.排序与搜索排序算法(英语:Sortingalgorithm)是一种能将一串数据依照特定顺序进行排列的一种算法。2.排序算法的稳定性稳定性:稳定排序算法会让原本有相等键值的纪录维持相对次序。18385672(4,1)(3,1)(3,7)(5,6)(3,7)(3,1)如果一个排序算法是稳定的,当有两个相等键值的纪录R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。不稳定排序算法可能会在相等的键值中改变纪录的相

系统 2019-09-27 17:54:46 1947

Python

python logging类库使用例子

一、简单使用复制代码代码如下:defTestLogBasic():importlogginglogging.basicConfig(filename='log.txt',filemode='a',level=logging.NOTSET,format='%(asctime)s-%(levelname)s:%(message)s')logging.debug('thisisamessage')logging.info("thisisainfo")loggin

系统 2019-09-27 17:54:02 1947

Python

关于 Python opencv 使用中的 ValueError: too

最近在OpenCV-Python接口中使用cv2.findContours()函数来查找检测物体的轮廓。根据网上的教程,PythonOpenCV的轮廓提取函数会返回两个值,第一个为轮廓的点集,第二个是各层轮廓的索引。但是实际调用时我的程序报错了,错误内容如下:toomanyvaluestounpack(expected2)其实是接受返回值不符,如果你仅仅使用一个变量a去接受返回值,调用len(a),你会发现长度为3,也就是说这个函数实际上返回了三个值第一个

系统 2019-09-27 17:54:01 1947