搜索到与相关的文章
Python

Python类中的魔法方法之 __slots__原理解析

在类中每次实例化一个对象都会生产一个字典来保存一个对象的所有的实例属性,这样非常的有用处,可以使我们任意的去设置新的属性。每次实例化一个对象python都会分配一个固定大小内存的字典来保存属性,如果对象很多的情况下会浪费内存空间。可通过__slots__方法告诉python不要使用字典,而且只给一个固定集合的属性分配空间classFoo(object):__slots__=("x","y","z")def__init__(self,x,y):self.x=

系统 2019-09-27 17:47:50 1987

Python

Python:logging 的巧妙设计

引言logging的基本用法网上很多,这里就不介绍了。在引入正文之前,先来看一个需求:假设需要将某功能封装成类库供他人使用,如何处理类库中的日志?数年前在一个C#开发的项目中,我用了这样的方法:定义一个logging基类,所有需要用到日志的类都继承这个基类,这个基类中定义一个LogHandler事件,该事件用于实现具体的记录日志动作,同时可以通过将类A的LogHandler委托挂到类B的LogHandler上,实现将两个类的日志信息添加到一起。自从看了py

系统 2019-09-27 17:47:37 1987

Python

python处理文本文件并生成指定格式的文件

importosimportsysimportstring#以指定模式打开指定文件,获取文件句柄defgetFileIns(filePath,model):print("打开文件")print(filePath)print(model)returnopen(filePath,model)#获取需要处理的文件defgetProcFile(path):returnos.listdir(path)#判断是否满足某个条件,如果满足则执行defisTrue(outF

系统 2019-09-27 17:47:04 1987

Python

Python 编码处理-str与Unicode的区别

一篇关于STR和UNICODE的好文章整理下python编码相关的内容注意:以下讨论为Python2.x版本,Py3k的待尝试开始用python处理中文时,读取文件或消息,http参数等等一运行,发现乱码(字符串处理,读写文件,print)然后,大多数人的做法是,调用encode/decode进行调试,并没有明确思考为何出现乱码所以调试时最常出现的错误错误1Traceback(mostrecentcalllast):File"",line1,inUnico

系统 2019-09-27 17:46:15 1987

Python

python获取list下标及其值的简单方法

当在python中遍历一个序列时,我们通常采用如下的方法:foriteminsequence:process(item)如果要取到某个item的位置,可以这样写:forindexinrange(len(sequence)):process(sequence[index])另一个比较好的方式是使用python内建的enumerate函数:enumerate(sequence,start=0)上述函数中,sequence是一个可迭代的对象,可以是列表,字典,文

系统 2019-09-27 17:46:14 1987

Python

python3 enum模块的应用实例详解

一、枚举与字典类型字典类型的缺点:1.值可变2.没有防止相同标签的功能枚举的特点:1.枚举类的值不可以被外界更改2.不能存在相同的标签,但允许不同标签存在相同的枚举值,即后者相当于前者的别名3.枚举值可以是任意类型4.枚举标签尽量用大写fromenumimportEnum#普通类classdict():green=1green=2red=3dict.red=4print(dict.red)>>>4classVIP(Enum):RED=1GREEN=2YEL

系统 2019-09-27 17:45:52 1987

Python

Python判断字符串与大小写转换

判断字符串s.isalnum()#所有字符都是数字或者字母s.isalpha()#所有字符都是字母s.isdigit()#所有字符都是数字s.islower()#所有字符都是小写s.isupper()#所有字符都是大写s.istitle()#所有单词都是首字母大写,像标题s.isspace()#所有字符都是空白字符、\t、\n大小写转换s.upper()#把所有字符中的小写字母转换成大写字母s.lower()#把所有字符中的大写字母转换成小写字母s.cap

系统 2019-09-27 17:45:51 1987

Python

Python基础--字典操作

dic={'key1':'value1','key2':'value2'}一、增if'key3'notindic:dic['key3']='value3'二、删deldic['key1']#删除键是'Name'的条目dic.clear()#清空字典所有条目deldic#删除字典三、改dic['key1']='value0'#更新四、查遍历forkey,valueindic.items():print(key,value)#同时遍历key,valuefori

系统 2019-09-27 17:45:50 1987

Python

Python常用库推荐

IPython+ptpython,完美体验首先是安装pipinstallipythonptpython然后使用ptipython有什么好处1.IPython是非常强大的Python增强工具2.ptpython提供了类似IDE的自动补全功能3.当你在命令行输入pyipython时,便结合了这两者的功能,无比强大!virtualenv+virtualenvwrapper,轻松创建隔离环境首先安装pipinstallvirtualenvwrapper(会自动把v

系统 2019-09-27 17:38:45 1987

Python

python实现发送和获取手机短信验证码

首先为大家分享python实现发送手机短信验证码后台方法,供大家参考,具体内容如下1、生成4位数字验证码defcreatePhoneCode(session):chars=['0','1','2','3','4','5','6','7','8','9']x=random.choice(chars),random.choice(chars),random.choice(chars),random.choice(chars)verifyCode="".join

系统 2019-09-27 17:38:37 1987