Colección en Python: Todo lo que necesitas saber

Publicado: 2021-04-09

Python es un poderoso lenguaje de programación. Es modular y conocido por su simplicidad, reutilización y mantenibilidad. En la programación modular, una tarea de programación grande y compleja se divide en módulos más pequeños.

Este artículo habla sobre la colección de módulos en Python . Collection mejora las funcionalidades y es la alternativa a los contenedores de dictados, listas, conjuntos y tuplas incorporados de propósito general de Python.

"Las listas, tuplas, conjuntos y diccionarios de Python son estructuras de datos definidas por el usuario, y cada una tiene su propio conjunto de ventajas y desventajas".

Tabla de contenido

Módulo Python

Un módulo es un archivo que contiene definiciones y declaraciones de Python que implementan un conjunto de funciones. El comando de importación se utiliza para importar módulos de otros módulos. Python tiene varios módulos incorporados.

Vayamos ahora al quid del artículo y aprendamos la colección de módulos en Python en detalle.

Colección en Python

Collection en Python es el contenedor que almacena colecciones de datos. List, set, tuple, dict, etc., son colecciones integradas en Python . Hay seis módulos de recopilación en Python que ofrecen estructuras de datos adicionales para almacenar recopilaciones de datos. Estos módulos de Python mejoran las operaciones de la colección de contenedores integrados.

Ahora discutiremos los diferentes contenedores proporcionados por la colección en el módulo de Python .

1. dictado ordenado

OrderedDict() funciona de manera similar al objeto de diccionario donde las claves mantienen el orden en que se insertan. Si desea volver a insertar la llave, el valor anterior se sobrescribirá y la posición de la llave no cambiará.

Ejemplo:

importar OrderedDict de colecciones

d1=colecciones.OrderedDict()

d1['A']=1

d1['B']=2

d1['C']=3

d1['D']=4

para x,v en d1.items():

imprimir (x,v)

Producción:

un 1

B 2

C 3

D 4

2. deque()

Python deque() es una lista optimizada que agrega y elimina elementos de ambos extremos.

Ejemplo:

importar deque de colecciones

lista1 = [“a”,”b”,”c”]

deq = deque(lista1)

imprimir (deq)

Producción:

deque(['a', 'b', 'c'])

3. Contador

Los contadores son el subgrupo de los objetos de diccionario que cuentan los objetos hashable. La función de contador toma la entrada iterable como argumento y devuelve una salida como un diccionario. La clave es un elemento iterable y el valor es el número total de veces que un elemento está presente en el iterable.

Ejemplo:

importar contador de colecciones

c = Contador()

lista1 = [1,2,3,4,5,7,8,5,9,6,10]

Contador (lista1)

Contador ({1:5,2:4})

lista1 = [1,2,4,7,5,1,6,7,6,9,1]

c = Contador(lista1)

imprimir (c[1])

Producción:

3

Funciones de contador adicionales

1. Elementos () Función

La función elements() devuelve una lista de los elementos presentes en el objeto Counter .

Ejemplo:

c = Contador({1:4,2:3})

imprimir (lista (c. elementos ()))

Producción:

[1,1,1,1,2,2,2]

Aquí, se crea un objeto Contador utilizando un argumento de diccionario. El número de conteos para 1 es 4, y para 2 es 3. La función elementos() se llama con el objeto c devolviendo un iterador.

2. Función most_common()

La función Counter() de Python devuelve un diccionario desordenado, mientras que la función most_common() lo ordena según el número de cada elemento.

Ejemplo:

lista = [1,2,3,4,5,5,5,7,3]

c = contador (lista)

imprimir (c.más_común())

Producción:

[((5,3), (1,1),(2,1),(3,2),(4,1), (7,1))]

Aquí, la función most_common devuelve una lista ordenada según el recuento de elementos. 5 viene tres veces; por lo tanto, viene primero, como elemento de la lista.

3. Función Restar()

El subtract() considera argumentos iterables o de mapeo y resta el recuento de elementos con ese argumento.

Ejemplo:

c = contador({1:2,2:3})

salida= {1:1,2:1}

c.restar(salida)

imprimir (c)

Producción:

Contador ({1:1,2:2})

4. Objetos de mapa de cadena

La clase Chainmap agrupa varios diccionarios para crear una sola lista. El diccionario vinculado es público y se puede acceder a él mediante el atributo de mapa.

Ejemplo:

Importar mapa de cadena de colecciones

dict1 = { 'w' : 1, 'x' : 2 }

dict2 = {'y' : 3. 'z': 4 }

mapa_cadena = MapaCadena(dict1,dict2)

imprimir (chain_map.maps)

Producción:

[{'x': 2, 'w': 1}, {'y': 3, 'x': 4}]

5. Tupla con nombre

La función namedtuple() devuelve un objeto de tupla con nombres para cada posición en la tupla. Se introdujo para eliminar el problema de recordar el índice de cada campo de un objeto tupla.

Ejemplo:

Importar tupla con nombre de colecciones

Estudiante = tupla nombrada ('Estudiante', 'nombre, apellido, edad')

s1 = Estudiante ('Tom', 'Alter', '12')

imprimir(s1.nombre)

Producción:

Estudiante (nombre = 'Tom', apellido = 'Alter', edad = '12')

En este ejemplo, puede acceder a los campos de cualquier instancia de una clase.

6. Dictado predeterminado

Python defaultdict() es un objeto de diccionario y es una subclase de la clase dict. Proporciona todos los métodos de diccionario, pero toma el primer argumento como tipo de datos predeterminado. Lanza un error cuando accede a una clave inexistente.

Ejemplo:

importar dictado predeterminado de colecciones

num = predeterminadodict(int)

numero['uno'] = 1

numero['dos'] = 2

imprimir (num['tres'])

Producción:

0

Conclusión

Se sabe que la recopilación en Python aporta mejoras al módulo de recopilación de Python. Las colecciones se introdujeron en la versión 2.4 de Python. Se pueden esperar muchos cambios y mejoras en las versiones posteriores. En este artículo, hemos explicado las seis colecciones existentes en Python con ejemplos y la forma en que se implementan en el lenguaje. Son uno de los conceptos más importantes desde el punto de vista del alumno.

Aprende colección en Python con el programa exclusivo de upGrad de licenciatura en aplicaciones informáticas . Este programa cubre las habilidades necesarias para ingresar a la industria de TI.

Si tiene curiosidad por aprender sobre python, ciencia de datos, consulte el programa Executive PG de ciencia de datos de IIIT-B y upGrad, creado para profesionales que trabajan y ofrece más de 10 estudios de casos y proyectos, talleres prácticos prácticos, tutoría con expertos de la industria. , 1 a 1 con mentores de la industria, más de 400 horas de aprendizaje y asistencia laboral con las mejores empresas.

Aprenda cursos de ciencia de datos en línea de las mejores universidades del mundo. Obtenga programas Executive PG, programas de certificados avanzados o programas de maestría para acelerar su carrera.

¿Por qué necesitamos el módulo de colección en Python?

Python ya tiene 4 tipos de datos de colección integrados. Estos son lista, tupla, diccionario y conjunto. Sin embargo, estos contenedores de datos se utilizan para fines generales.
Los siguientes puntos destacan las principales ventajas de usar el módulo de recopilación sobre los contenedores de datos integrados.
El módulo de colección proporciona la versión especializada de estos contenedores, como namedtuple, OrderedDict, defaultdict, chainmap, counter y muchos más.
Al estar más optimizados, estos contenedores demuestran ser una mejor alternativa a los contenedores de datos tradicionales como list, tuple y set.
El módulo de recopilación es eficiente para tratar con datos estructurados.
Los contenedores de datos como namedtuple consumen menos memoria y brindan operaciones mejoradas para almacenar y administrar los datos.

¿Cuál es la diferencia entre un diccionario y un Diccionario ordenado en Python?

Python Dictionary o "Dict" es una estructura de datos incorporada de Python que se utiliza para almacenar una colección desordenada de elementos. A diferencia de otras estructuras de datos de Python que almacenan valores únicos, la estructura de datos del diccionario almacena pares clave-valor donde cada clave es única. No recuerda el orden de inserción de los pares clave-valor e itera a través de las claves.
Por otro lado, un Diccionario ordenado u OrderedDict realiza un seguimiento del orden de inserción de los pares clave-valor. También consume más memoria que un diccionario regular en Python debido a su implementación de lista doblemente enlazada. Si elimina y vuelve a insertar la misma clave, se insertará en su posición original ya que OrderedDict recuerda el orden de inserción.

¿Cuáles son las diversas operaciones de namedtuple?

La tupla con nombre en Python realiza varias operaciones. La siguiente es una lista de algunas de las operaciones más comunes realizadas por la tupla nombrada.
1. Operaciones de acceso: acceso por índice: se puede acceder a los elementos de una tupla nombrada por sus índices, a diferencia de un diccionario. Acceso por nombre de clave: La forma alternativa de acceder a los elementos es por su nombre de clave.
2. Operaciones de conversión: make(): esta función devuelve una tupla con nombre. _asadict(): esta función devuelve un diccionario ordenado que se construye a partir de los valores asignados. usando el operador "**" (doble estrella): esta función convierte un diccionario de Python en una tupla con nombre.
3. Operaciones adicionales: _fileds(): esta función devuelve todos los nombres clave de la tupla con nombre dada. _replace(): esta función toma el nombre de una clave como argumento y cambia los valores asignados a ella.