当前位置:首页 >> 编程语言 >> 【python学习】基础篇-常用模块-collections模块:数据结构,如列表、元组、字典和集合等,索尼酷拍

【python学习】基础篇-常用模块-collections模块:数据结构,如列表、元组、字典和集合等,索尼酷拍

0evadmin 编程语言 1
文件名:【python学习】基础篇-常用模块-collections模块:数据结构,如列表、元组、字典和集合等,索尼酷拍 【python学习】基础篇-常用模块-collections模块:数据结构,如列表、元组、字典和集合等

Python中的collections模块提供了一些有用的数据结构,如列表、元组、字典和集合等。 以下是collections模块中一些常用数据结构的用法:

Counter类 Counter类是一个字典子类,用于计数可哈希对象。 它可以接受一个可迭代对象作为参数,并返回一个字典,其中键是可迭代对象中的元素,值是元素出现的次数。 from collections import Counterlst = [1, 2, 3, 2, 1, 3, 1]counter = Counter(lst)print(counter) # 输出{1: 3, 2: 2, 3: 2} OrderedDict类 OrderedDict类是一个有序字典,它可以按照元素添加的顺序来迭代字典中的元素。 与普通字典不同的是,OrderedDict类在创建时需要传入一个元素为键值对的列表。 from collections import OrderedDictod = OrderedDict()od['a'] = 1od['b'] = 2od['c'] = 3for k, v in od.items():print(k, v) # 输出a 1 b 2 c 3

3.deque类 deque类是一个双端队列,可以在队列的两端进行插入和删除操作。 它支持快速从队列两端添加或删除元素。

from collections import dequed = deque([1, 2, 3])d.appendleft(0) # 在队列头部添加元素d.append(4) # 在队列尾部添加元素print(d) # 输出deque([0, 1, 2, 3, 4])

4.defaultdict类 defaultdict类是一个带有默认值的字典,当访问不存在的键时,会自动创建一个默认值。 它可以通过传递一个函数作为参数来创建。

from collections import defaultdictdd = defaultdict(int)dd['a'] += 1dd['b'] += 2print(dd) # 输出defaultdict(<class 'int'>, {'a': 1, 'b': 2})

5.namedtuple namedtuple是一个工厂函数,用于创建一个具有命名字段的元组子类。 它可以使代码更易读和维护,因为可以通过名称而不是索引来访问元组中的元素。

from collections import namedtuplePerson = namedtuple('Person', ['name', 'age', 'gender'])p = Person('Tom', 20, 'male')print(p.name) # 输出Tomprint(p.age) # 输出20print(p.gender) # 输出male

6.ChainMap ChainMap是一个字典子类,它将多个字典链接在一起,形成一个单一的字典。 当访问一个不存在的键时,ChainMap会沿着链接的字典一直查找,直到找到该键或到达链表的末尾。

from collections import ChainMapdict1 = {'a': 1, 'b': 2}dict2 = {'b': 3, 'c': 4}dict3 = {'d': 5}chain = ChainMap(dict1, dict2, dict3)print(chain['a']) # 输出1print(chain['b']) # 输出2print(chain['c']) # 输出3print(chain['d']) # 输出5print(chain['e']) # 抛出KeyError异常
协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接