Le contenu partagé avec vous dans cet article concerne le module de collecte de Python, qui a une certaine valeur de référence. Les amis dans le besoin peuvent se référer au
collections. Le module fournit plusieurs types de données supplémentaires basés sur les types de données intégrés, tels que int, str, list, dict, etc.
1.namedtuple() : Générer une sous-classe de tuple qui peut utiliser des noms pour accéder au contenu des éléments
2.deque : File d'attente à double extrémité, qui peut rapidement ajouter et ajouter à partir du de l'autre côté Exporter l'objet
3.Counter : compteur, principalement utilisé pour compter
4.OrderedDict : dictionnaire ordonné
5.defaultdict : dictionnaire avec valeurs par défaut
Un : nommétuple(), tuples nommés.
tuple est une collection immuable. nomméetuple est une fonction. Elle est utilisée pour construire un objet tuple personnalisé et spécifie le nombre d'éléments du tuple qui peuvent être référencés via des attributs plutôt que des éléments d'index. Nous pouvons facilement personnaliser un type de données via nommétuple, qui possède les attributs immuables du tuple et peut être référencé en fonction des attributs.
from collections import namedtuple piont=namedtuple('piont',['x','y']) p=piont(2,1) print(p) print("x =",p.x) print("Y =",p.y) >>>isinstance(p,piont) True >>>isinstance(p,tuple) True 类似的创建一个圆,通过坐标,半径r。用namedtuple构建 Cirle=namedtup(‘Circle’,['x','y','r']) 2、有序字典(orderedDict ) dict中key是无序的,在做迭代时,无法确认key的顺序。 orderdDict是对字典类型的补充,他记住了字典元素添加的顺序
from collections import OrderedDict od=OrderedDict([('a',1),('z',2),('c',3)])// 有序字典顺序是插入进去的顺序排列的 print(od) d=dict([('a',1),('z',2),('c',3)]) //字典是无序的,key的顺序是变化的 print(d)
3、默认字典(defaultdict) defaultdict是对字典的类型的补充,他默认给字典的值设置了一个类型。
我们都知道,在使用Python原生的数据结构dict的时候,如果用 d[key] 这样的方式访问, 当指定的key不存在时,是会抛出KeyError异常的。但是,如果使用defaultdict,只要你传入一个默认的工厂方法,那么请求一个不存在的key时, 便会调用这个工厂方法使用其结果来作为这个key的默认值。
4、计数器Counter Counter是对字典类型的补充,用于追踪值的出现次数。 具备字典的所有功能+自己的功能
from collections import Counter c=Counter(['11','22','11','33','11','44','55']) c2=Counter("abcdefdasfdsafaf") print(c) print(c2)
most_common(self, n=None),数量从大到小排列,获取前N个元素。
elements(self) 计数器中的所有元素。注:此处非所有元素集合,而是包含所有元素集合的迭代器sorted(c.elements())
update(self,iterable=None,**keds):更新计数器,其实是增加计数器,如果没有则新建。
c.update('witch')
subtract(self, iterable=None, **kwds):相减,原来的计数器中的每一个元素的数量减去后添加的元素的数量c.subtract('witch')
Recommandations associées :
Contenu de base de Python : module de collections
Compréhension approfondie du module de collection Python et copie profonde et superficielle
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!