定义
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。
模块让你能够有逻辑地组织你的 Python 代码段。
把相关的代码分配到一个模块里能让你的代码更好用,更易懂。
模块能定义函数,类和变量,模块里也能包含可执行的代码。
那废话不多说,给大家带来几个必须学会的python模块吧。
re
- re的matche方法和search方法
- re的split,findall,finditer方法
re.split(pattern, string[, maxsplit])
按照能够匹配的子串将string分割后返回列表。maxsplit用于指定***分割次数,不指定将全部分割。
re.findall(pattern, string[, flags])
搜索string,以列表形式返回全部能匹配的子串
re.finditer(pattern, string[, flags])
搜索string,返回一个顺序访问每一个匹配结果(Match对象)的迭代器
collections
- namedtuple
namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来引用tuple的某个元素。
这样一来,我们用namedtuple可以很方便地定义一种数据类型,它具备tuple的不变性,又可以根据属性来引用,使用十分方便。
- deque
使用list存储数据时,按索引访问元素很快,但是插入和删除元素就很慢了,因为list是线性存储,数据量大的时候,插入和删除效率很低。
deque是为了高效实现插入和删除操作的双向列表,适合用于队列和栈:
- defaultdict
使用dict时,如果引用的Key不存在,就会抛出KeyError。如果希望key不存在时,返回一个默认值,就可以用defaultdict:
functools
- partial函数
partial函数可以重新绑定函数的可选参数,生成一个callable的partial对象:
- update_wrapper函数
update_wrapper函数可以把被封装函数的__name__、__module__、__doc__和 __dict__都复制到封装函数去:
- wraps函数
wraps函数将update_wrapper也封装了进来: