设计模式的重要性,不再赘述,分方法和类型逐一记录,以备忘。一、单例模式单例模式,顾名思义,python中的某个类有且仅有一个对象(实例);1.应用场景:某个实例必须保证全局唯一性,如读取某些配置文件的实例,需要确保在任意地方都是相同配置值;2.实现方法:使用python中的基类object中__new__();3.代码:classsingleton(object):def__new__(cls,*args,**kw):ifnothasattr(cls,'_
系统 2019-09-27 17:52:35 2132
1#!/usr/bin/envpython3.72#-*-coding:utf-8-*-3#Author:Lancer2019-09-0210:07:2145importsys,getopt67defusage():8print("usagecall")910defmain():11try:12opts,args=getopt.getopt(sys.argv[1:],"ho:v",["help","output="])13print(sys.argv[1:
系统 2019-09-27 17:52:18 2132
看python社区大妈组织的内容里边有一篇讲python内存优化的,用到了__slots__。然后查了一下,总结一下。感觉非常有用python类在进行实例化的时候,会有一个__dict__属性,里边有可用的实例属性名和值。声明__slots__后,实例就只会含有__slots__里有的属性名。#coding:utf-8classA(object):x=1def__init__(self):self.y=2a=A()printa.__dict__print(
系统 2019-09-27 17:52:11 2132
目录python多线程详解一、线程介绍什么是线程为什么要使用多线程二、线程实现threading模块自定义线程守护线程主线程等待子线程结束多线程共享全局变量互斥锁递归锁信号量(BoundedSemaphore类)事件(Event类)三、GIL(GlobalInterpreterLock)全局解释器锁python多线程详解一、线程介绍什么是线程线程(Thread)也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位
系统 2019-09-27 17:51:56 2132
一、添加epel源yuminstallepel-release二、安装Python3.4,装完再升级吧yuminstallpython34三、安装pip3yuminstallpython34-setuptoolseasy_install-3.4pip之后就可以使用pip3了,如:pip3installnumpy转载至:https://blog.csdn.net/E770679957/article/details/73718870
系统 2019-09-27 17:50:01 2132
本文实例讲述了Python基础学习之类与实例基本用法与注意事项。分享给大家供大家参考,具体如下:前言和其他编程语言相比,Python用非常少的新语法和语义将类加入到语言中。Python的类提供了面向对象编程的所有标准特性:类继承机制允许多个基类,派生类可以覆盖它基类的任何方法,一个方法可以调用基类中相同名称的的方法。对象可以包含任意数量和类型的数据。和模块一样,类也拥有Python天然的动态特性:它们在运行时创建,可以在创建后修改。Python的类Pyth
系统 2019-09-27 17:49:35 2132
一、用例编写规则1.unittest提供了testcases、testsuites、testfixtures、testrunner相关的类,让测试更加明确、方便、可控。使用unittest编写用例,必须遵守以下规则:(1)测试文件必须先importunittest(2)测试类必须继承unittest.TestCase(3)测试方法必须以“test_”开头(4)测试类必须要有unittest.main()方法2.pytest是python的第三方测试框架,是
系统 2019-09-27 17:49:08 2132
numpy.ptp()是计算最大值与最小值差的函数,用法如下:importnumpyasnpa=np.array([np.random.randint(0,20,5),np.random.randint(0,20,5)])print('原始数据\n'a)print('对所有数据计算\n',a.ptp())print('axis=0,按行方向计算,即每列\n',a.ptp(axis=0))#按行方向计算,即每列print('axis=1,按列方向计算,即每行
系统 2019-09-27 17:48:43 2132
前言本文主要给大家介绍了关于python中调试或排错的五种方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的的介绍吧python调试或排错的五种方法1、print,直接打印,比较简单而且粗暴在代码中直接输入print+需要输出的结果,根据打印的内容判断即可2、assert断言,很方便,测试人员常常在写自动化用例的时候用的比较多如下,直接将预期结果和实际结果做判断deftrue_code():x=3y=2z=x+yassert(5==z),"z不
系统 2019-09-27 17:48:41 2132
1.首先需要一个python的tgz包,这里以Python3.6.8的包为例;2.解压Python.tgz;3.安装所需要的依赖:#yum-ygroupinstalldevelopment#yum-yinstallzlib-devel#yum-yinstallgcc#yuminstall-ylibffilibffi-devel#yuminstallopenssl-devel4.开始编译安装python3:#./configure--with-ssl#mak
系统 2019-09-27 17:47:49 2132
引言logging的基本用法网上很多,这里就不介绍了。在引入正文之前,先来看一个需求:假设需要将某功能封装成类库供他人使用,如何处理类库中的日志?数年前在一个C#开发的项目中,我用了这样的方法:定义一个logging基类,所有需要用到日志的类都继承这个基类,这个基类中定义一个LogHandler事件,该事件用于实现具体的记录日志动作,同时可以通过将类A的LogHandler委托挂到类B的LogHandler上,实现将两个类的日志信息添加到一起。自从看了py
系统 2019-09-27 17:47:37 2132
测试的过程中经常需要截取屏幕,通常的做法是使用手机自带的截屏功能,然后将截屏文件复制出来,这种方法的优点是不需要连接数据线就可截屏,缺点则是生成的截屏文件命名是随机命名的,复制出来也比较麻烦。另一种方法是使用PC端的手机助手类软件。这里使用python编写一个截屏的脚本,双击运行脚本就OK,截屏成功后会将截屏文件已当前时间命名,并保存在存放脚本的当前路径的screenshot文件夹下:#!/usr/bin/envpythonimportosimportti
系统 2019-09-27 17:47:18 2132
【百度云搜索,搜各种资料:http://www.lqkweb.com】【搜网盘,搜各种资料:http://www.swpan.cn】css选择器1、2、3、::attr()获取元素属性,css选择器::text获取标签文本举例:extract_first('')获取过滤后的数据,返回字符串,有一个默认参数,也就是如果没有数据默认是什么,一般我们设置为空字符串extract()获取过滤后的数据,返回字符串列表#-*-coding:utf-8-*-import
系统 2019-09-27 17:47:14 2132
超如果你急需一个简单的WebServer,但你又不想去下载并安装那些复杂的HTTP服务程序,比如:Apache,ISS等。那么,Python可能帮助你。使用Python可以完成一个简单的内建HTTP服务器。于是,你可以把你的目录和文件都以HTTP的方式展示出来。佻只需要干一件事情,那就是安装一个Python。实际上来说,这是一个可以用来共享文件的非常有用的方式。实现一个微型的HTTP服务程序来说是很简单的事情,在Python下,只需要一个命令行。下面是这个
系统 2019-09-27 17:47:00 2132
Python网络爬虫与信息提取——正则表达式正则表达式的语法正则表达式的常用操作符操作符说明实例.表示任何单个字符[]字符集,对单个字符给出取值范围[abc]表示a、b、c,[a-z]表示a到z单个字符[^]非字符集,对单个字符给出排除范围[^abc]表示非a或b或c的单个字符*前一个字符0次或无限次扩展abc*表示ab、abc、abcc、abccc等+前一个字符1次或无限次扩展abc+表示abc、abcc、abccc等?前一个字符0次或1次扩展abc?表
系统 2019-09-27 17:46:58 2132