定义
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 也封装了进来:
来源: http://developer.51cto.com/art/201806/575733.htm