Python -> (10) Notas de Estudio

Módulo colección

colecciones Python es un conjunto de módulo integrado que proporciona muchas colecciones útiles.

>>> import collections

clase Ficha

CounterEs una ayuda para el recuento de objetos hashable subclase dict . Es una colección desordenada de elementos en el que el objeto de almacenamiento es hashable clave de diccionario, almacena el valor de recuento del mismo diccionario, el recuento puede ser cualquier número entero, incluyendo cero y negativo.
contador Ayuda
Contador ejemplo : Impactos ciertas palabras aparece en el archivo de licencia de Python.

>>> from collections import Counter
>>> import re
>>> path = '/usr/lib/python3.5/LICENSE.txt'
>>> words = re.findall('\w+', open(path).read().lower())
>>> Counter(words).most_common(10)
[('the', 80), ('or', 78), ('1', 66), ('of', 61), ('to', 50), ('and', 48), ('python', 46), ('in', 38), ('license', 37), ('any', 37)]

Objeto de contador de elements()método, que devuelve la secuencia, contando el número de repetidas siguiendo el mismo elemento, hay trastorno de la orden de elemento.

>>> c = Counter(a=4, b=2, c=0, d=-2)
>>> list(c.elements())
['b','b','a', 'a', 'a', 'a']

most_common()Devuelve los elementos más comunes y su recuento, el orden de más común a menos

>>> Counter('abracadabra').most_common(3)
[('a', 5), ('r', 2), ('b', 2)]

clase defaultdict

defaultdictEstá construido dictsubclase de la clase que anula un método y añade una variable de instancia de escritura. El resto de funciones del mismo diccionario.
Usando la misma función defaultdictque el dict.setdefaultmétodo más rápido.

>>> from collections import defaultdict
>>> s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
>>> d = defaultdict(list)
>>> for k, v in s:
...     d[k].append(v)
...
>>> d.items()
dict_items([('blue', [2, 4]), ('red', [1]), ('yellow', [1, 3])])

Se puede ver que defaultdict incluso objetos de una clave no existe, se creará automáticamente una lista vacía.

clase namedtuple

Llamado tupla tupla ayuda a dar sentido a cada lugar, y hacer que el código sea más legible y la naturaleza autodocumentado.

Crear una tupla llamada para mostrar la información de ubicación de almacenamiento para cada tupla:

>>> from collections import namedtuple
>>> Point = namedtuple('Point', ['x', 'y'])  # 定义命名元组
>>> p = Point(10, y=20)  # 创建一个对象
>>> p
Point(x=10, y=20)
>>> p.x + p.y
30
>>> p[0] + p[1]  # 像普通元组那样访问元素
30
>>> x, y = p     # 元组拆封
>>> x
10
>>> y
20

Fuente: edificio de laboratorios

Publicado 33 artículos originales · ganado elogios 1 · vistas 1241

Supongo que te gusta

Origin blog.csdn.net/weixin_44783002/article/details/104638770
Recomendado
Clasificación