栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python——特殊序列类

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python——特殊序列类

概要

Python标准模块collections专门用于定义特殊 容器 也就是特殊序列类 是通过基本数据类型变形而来 详情见下图

deque

定义 双端队列

创建一个deque对象

from collections import deque
deque1 deque([ hello , world , 1, 2, 3])

常用方法

1、append 从尾部添加元素

2、appendleft 从头部添加元素

3、pop 从尾部弹出元素 有返回值

4、popleft 从头部弹出元素 有返回值

5、extend 从尾部添加多个元素 需要传入一个列表

6、extendleft 从头部添加多个元素

7、insert 从指定位置添加元素

8、rotate 尾部的元素移动到头部 可传递参数 表示翻滚几次 默认值为1

ChainMap

定义 字典的 容器 可以放入多个字典

常用方法

1、get 获取指定key的value

2、new_child 往容器中添加字典 在头部进行添加

3、pop 弹出map[0] 也就是第一个字典中指定的key 并返回对应的value

4、popitem 弹出map[0]中尾部的key和value 并返回对应的key和value

5、clear 清空map[0] 留下一个空字典

6、maps 返回一个包含所有字典的列表

注意点

在容器中对字典进行操作 都会作用到原字典中

nametuple

定义 是一个工厂函数 创建又名的元组对象 创建的元组具有tuple类的所有方法

创建一个nametuple对象

from collections import namedtuple
Point namedtuple( Point , [ x , y ])
shenzhen Point(x 220, y 115)
OrderedDict

定义 可排序的字典容器 元素可移动

常用方法

popitem 弹出字典最后的键值对 可修改last参数

move_to_end 将指定的键值对移动到字典最后 可修改last参数 last参数默认为True

Counter

定义 创建计数器对象

创建Counter对象

1、不传递参数 将创建一个空的计数器

2、传递可迭代对象 传递序列将统计序列中每个元素出现的次数。传递字符串的话 计数器会将字符串拆分成单个字符 统计每个字符的个数

常用方法

1、most_common 返回一个出现次数最多的前n位

from collections import Counter
list1 [1, 2, 3, 4, 2, 3, 2, 5]
counter1 Counter(list1)
print(counter1.most_common(2)) # [(2,3), (3,2)]出现最多的两个元素

2、update 往计数器中添加内容 可迭代对象、字符串、计数器 重新计数

3、subtract 从计数器中删除内容 参数同上 重新计数 允许出现负数

4、elements 返回一个可迭代对象 迭代时会将相同的元素排列在一起迭代出来

5、copy 拷贝 将计数器拷贝一份

6、算数操作 两个计数器可以做算数运算 计数器相加 、- 计数器相减 不保留负数 、 计数器相交 、| 计数器并集

总结

​ 本次主要介绍了一些特殊的序列类 在开发中可以根据需求选择不同的类型简化代码 在AI中最常见的时Counter这个类型 用于统计列表中元素的个数 属于特征工程部分 大家要在实际开发中多使用这些类型

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267998.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号