建造者模式,也是一种创建新对象的设计方法,和C++中的虚函数很类似,但是用到了python自身的虚基类ABCMeta。1.应用场景:某个类中的函数较多,且实现比较复杂,很多时候需要继承的子类重载或者重新定义逻辑;2.背景基础:由于用到python中虚函数,需要了解abc模块中的ABCMeta和python中类创建对象时的__metaclass__属性含义。一般地,在某个类中如果定义__metaclass__=something时,简单地说是,创建对象时,会
系统 2019-09-27 17:52:26 1987
字符串是Python中最常用的数据类型,而且很多时候你会用到一些不属于标准ASCII字符集的字符,这时候代码就很可能抛出UnicodeDecodeError:'ascii'codeccan'tdecodebyte0xc4inposition10:ordinalnotinrange(128)异常。这种异常在Python中很容易遇到,尤其是在Python2.x中,是一个很让初学者费解头疼的问题。不过,如果你理解了Python的Unicode,并在编码中遵循一定
系统 2019-09-27 17:50:35 1987
这里先解释一下几个概念-位置参数:按位置设置的参数,隐式用元组保存对应形参.平时我们用的大多数是按位置传参.比如有函数deffunc(a,b,c),调用func(1,2,3).即a=1,b=2,c=3-关键字参数:可以通过关键字设置参数,不用关心参数位置,隐式用字典保存形参.比如有函数deffunc(a,b,c),调用func(b=1,c=2,a=3),即a=3,b=1,c=2普通格式复制代码代码如下:deffunc(opt_args):...return
系统 2019-09-27 17:50:13 1987
python基础学习笔记(二)2013-02-2416:25虫师阅读(...)评论(...)编辑收藏继续第一篇的内容,讲解,python的一些基本的东西。注释为了让别人能够更容易理解程序,使用注释是非常有效的,即使是自己回头再看旧代码也是一样。>>>#获得用户名:>>>user_name=raw_input("whatisyourname?")在python中用井号(#)表示注释。井号(#)右边的内存将不被程序执行。即使没有注释,也应该让代码本身易于理解。
系统 2019-09-27 17:48:56 1987
下面通过几个案例来分析一下,注意:本节的parsematch函数请参考《妙用re.sub分析正则表达式解析匹配过程》案例一:>>>re.findall(r".*.*(.*)",'第二回悟彻菩提真妙理断魔归本合元神')['断魔归本合元神']>>>parsematch(r".*.*(.*)",'第二回悟彻菩提真妙理断魔归本合元神')第1次匹配,匹配情况:匹配子串group(0):第二回悟彻菩提真妙理断魔归本合元神,位置为:(0,19)匹配子串group(1):
系统 2019-09-27 17:48:48 1987
Python中除法那些坑最近刷了一个cf题目,被python中的出发机制坑的不要不要的。这是链接:Chunga-Changapython中//和/的区别与使用a//b会获取值的整数部分,小数部分会丢失a/b会返回完整的值举个栗子:5//2=25/2=2.5那么问题来了?int(a/b)和a//b的区别在哪里呢?例1:int(7/3)=27//3=2既然如此讨论它们意义在上面地方呢?看看例二例二:int(999999999999999997/5)=20000
系统 2019-09-27 17:48:09 1987
fromPILimportImage,ImageFont,ImageDrawdefCreateImg(text):fontSize=30liens=text.split('\n')print(len(liens))im=Image.new("RGB",(480,len(lines)*(fontSize+5)),(255,0,0))dr=ImageDraw.Draw(im)fontPath=r"C:\Windows\Fonts\STKAITI.TTF"#fo
系统 2019-09-27 17:48:05 1987
因为Python是自带文档,可以通过help函数来查询每一个系统函数的用法解释说明。一般来说,关键的使用方法和注意点在这个系统的文档中都说的很清楚。我试图在网上找过系统文档的中文版的函数功能解释,但是都没有找到,所以我决定将就使用英文版的系统自带的函数解释来学习。如果你想进行Tkinter和wxPython编程,想要知道一般的widget的使用方法和属性介绍,英文又不是太好的话,我推荐你,你可以去看看《Python与Tkinter编程》这本书,里面392页
系统 2019-09-27 17:47:58 1987
本文实例讲述了python实现ip代理池功能。分享给大家供大家参考,具体如下:爬取的代理源为西刺代理。用xpath解析页面用telnet来验证ip是否可用把有效的ip写入到本地txt中。当然也可以写入到redis、mongodb中,也可以设置检测程序当代理池中的ip数不够(如:小于20个)时,启动该脚本来重新获取ip,本脚本的代码也要做相应的改变。#!/usr/bin/envpython#-*-coding:utf-8-*-#@Version:1.0#@T
系统 2019-09-27 17:47:57 1987
1.a=[]arrays=[a*3]arrays其实为[[]]2.arrays=[a]*N看上去是创建了二维数组,但是只是创建N个指向a的引用,所以一旦a改变,arrays中N个list也会随之改变eg:a=[]N=3arrays=[a]*3arrays[0].append(1)#看上去只为第一个list添加整数1,实际上---print(arrays)输出为[[1],[1],[1]]3.arrays=[[]foriinrange(N)]eg:N=3arr
系统 2019-09-27 17:47:28 1987