colecciones de python
Funciones y métodos de Python
Michael Zippo
01.11.2021
Python tiene cuatro tipos de recopilaciòn de datos: listas, tuplas, conjuntos y diccionarios. El mòdulo Python de colecciones proporciona opciones adicionales, que incluyen namedtuple
, Counter
, defaultdict
y ChainMap
.
Python ofrece cuatro tipos de datos de colecciòn: listas, tuplas, conjuntos y diccionarios. Cada uno de estos tipos de datos es √∫til en situaciones especìficas. & Nbsp;
Por ejemplo, debido a que las listas se pueden modificar, es posible que desee utilizar una para almacenar una lista en evoluciòn de nombres de estudiantes. O suponga que desea almacenar una lista de sabores de helado que nunca cambiarán. Una tupla, cuyo contenido no se puede modificar, puede ser más apropiada.
A menudo, cuando está trabajando en Python, puede encontrar que estos tipos de datos no ofrecen todas las funciones que está buscando. Afortunadamente, existe un mòdulo de Python que puede utilizar para acceder a funciones más avanzadas relacionadas con las colecciones de datos: el mòdulo de colecciones de Python.
El mòdulo de colecciones de Python se creò para mejorar la funcionalidad de las opciones de colecciòn integradas y dar a los desarrolladores más flexibilidad al trabajar con estructuras de datos. En esta guìa, analizaremos los conceptos básicos del mòdulo de colecciones de Python y exploraremos cuatro de las estructuras de datos más utilizadas del mòdulo.
Actualizaciòn de colecciones
Las colecciones son tipos de datos de contenedor que se puede utilizar para almacenar datos. Como se mencionò anteriormente, las colecciones pueden almacenar listas, conjuntos, tuplas y diccionarios. Cada uno de estos tipos de datos tiene sus propias caracterìsticas.
Listas
Una lista es un dato ordenado y mutable tipo que se puede utilizar para almacenar datos que pueden cambiar con el tiempo. Por ejemplo, puede agregar, eliminar y actualizar elementos de lista existentes. Las listas pueden contener valores duplicados. Puede usar n√∫meros de ìndice para hacer referencia a elementos individuales dentro de una lista.
El siguiente es un ejemplo de còmo declarar una lista en Python:
El 81% de los participantes declarò que se sentìa más seguro acerca de su perspectivas de trabajo técnico después de asistir a un campamento de entrenamiento. Asigne a un bootcamp hoy.
El graduado promedio de bootcamp pasò menos de seis meses en la transiciòn profesional, desde comenzar un bootcamp hasta encontrar su primer trabajo.
Tuples son tipos de datos ordenados e inmutables. Aunque las tuplas pueden contener valores duplicados, sus valores no se pueden cambiar. Las tuplas están rodeadas por llaves. & Nbsp;
Aquì hay un ejemplo de una tupla de Python:
Conjuntos
Los conjuntos son listas desordenadas. Se declaran utilizando corchetes. A diferencia de las listas, los conjuntos no tienen valores de ìndice y no pueden incluir entradas duplicadas. & Nbsp;
Aquì hay un ejemplo de un conjunto de Python:
Diccionarios
Los diccionarios son tipos de datos cambiantes y desordenados que se pueden indexar. Cada elemento de un diccionario tiene una clave y un valor. & Nbsp;
Aquì hay un ejemplo de una entrada de diccionario de Python:
Estos cuatro tipos de datos tienen una amplia variedad de usos en Python . Sin embargo, si está buscando realizar acciones más avanzadas con tipos de datos de contenedor de Python, vale la pena considerar el mòdulo de colecciones de Python.
El mòdulo de colecciones de Python contiene una serie de estructuras de datos especializadas que puede utilìcelo además de & mdash; o como alternativa a los contenedores integrados de & mdash; Python. Debido a que collections
es un mòdulo, tenemos que importarlo a nuestro programa. Sin embargo, está integrado en Python, por lo que no es necesario importar bibliotecas secundarias.
En este artìculo, nos centraremos en las cuatro estructuras de datos más utilizadas del mòdulo de colecciones, que son las siguientes:
- Contador < / li>
- namedtuple
- defaultdict
- ChainMap
Contador
Contador ()
es una subclase del objeto de diccionario y se puede usar para contar objetos hash. La funciòn Counter ()
toma un iterable como argumento y devuelve un diccionario.
Entonces , digamos que tenemos una lista de pedidos de sándwiches para enero y queremos saber cuántos sándwiches BLT vendimos durante ese mes. Podrìamos usar la funciòn Counter ()
para hacer esto. & nbsp;
Aquì hay un ejemplo del còdigo que usarìamos:
Nuestro programa devuelve: 2
.
Están sucediendo muchas cosas en nuestro còdigo, asì que vamos a desglosarlo.
En la primera lìnea, importamos la funciòn Contador
de colecciones
. Tenemos que hacer esto porque colecciones
es un mòdulo. Luego, declaramos nuestra matriz sandwich_sales
, que almacena cuántos sándwiches vendimos en enero.
En la siguiente lìnea, declaramos la variable our_counter
y asìgnele la funciòn Counter (sandwich_sales)
. Esto nos permite acceder al resultado de la funciòn Counter ()
cuando hacemos referencia a our_counter
.
Finalmente, usamos print (our_counter [ " BLT "])
para imprimir cuántos sándwiches en nuestro diccionario son iguales a BLT
. En este caso, la respuesta fue 2
.
namedtuple
El método namedtuple ()
devuelve una tupla con nombres para cada posiciòn en la tupla. Cuando trabaja con una tupla estándar, la √∫nica forma de acceder a los valores individuales es haciendo referencia a los n√∫meros de ìndice de la tupla. Si estás trabajando con una tupla grande, esto puede volverse confuso rápidamente.
"Career Karma entrò en mi vida cuando más lo necesitaba y rápidamente me ayudò a combinar con un bootcamp. Dos meses después de graduarme, descubrì ¬°el trabajo de mis sue√±os que se alineaba con mis valores y metas en la vida! "
Venus, ingeniero de software en Rockbot
Aquì hay un ejemplo de usar el método namedtuple ()
para almacenar el nombre y precio de un sándwich:
Nuestro programa devuelve: $ 3.00
.
Hay muchas cosas que suceden en nuestro còdigo, asì que vamos a desglosarlo. En la primera lìnea, importamos namedtuple
del mòdulo collections
para que podamos usarlo en nuestro còdigo.
En la siguiente lìnea, creamos la tupla Sandwich con el nombre Sandwich
y asìgnele dos encabezados: nombre y precio. Esto nos permite usar estos encabezados para hacer referencia a los valores en nuestras tuplas más adelante en nuestro còdigo. A continuaciòn, declaramos una variable llamada first_sandwich
, a la que le asignamos el elemento de tupla Chicken Teriyaki
.
Finalmente, imprimimos el precio de nuestro first_sandwich
, que en este caso es $ 3.00.
En el ejemplo anterior, creamos un diccionario con valores en las posiciones de ìndice
y 1
. Cuando imprimimos sandwiches [1]
, podemos ver que nuestro diccionario almacena nuestros valores. Sin embargo, cuando intentamos imprimir el elemento asociado con el valor de ìndice 2
, nuestro programa devuelve una lìnea en blanco porque no hay ning√∫n valor asignado a ese ìndice.
En un estándar diccionario, nuestro programa devolverìa un KeyError. Sin embargo, debido a que usamos defaultdict
, nuestro programa devuelve el tipo de datos que especificamos cuando creamos el diccionario. En el ejemplo anterior, indicamos que cualquier clave no válida deberìa devolver un str
, pero podrìamos haberlo codificado para devolver un n√∫mero entero o cualquier otro tipo de datos válido.
Esta funciòn puede será √∫til cuando esté trabajando con un diccionario para realizar una operaciòn en varios elementos, pero es posible que la operaciòn no funcione en cada elemento. En lugar de hacer que su programa devuelva un error, defaultdict ()
devolverá un valor predeterminado y seguirá ejecutándose.
Nuestro còdigo devuelve un objeto ChainMap que fusionò nuestros dos men√∫s, de la siguiente manera:
Podemos acceder a cada valor en nuestro ChainMap haciendo referencia a su nombre de clave. Por ejemplo, aquì hay una lìnea de còdigo que nos permite recuperar el precio del sándwich BLT: