conjunto de Python

Funciones y métodos de Python

A menudo, cuando esté trabajando con datos, querrá almacenar una lista de datos que no pueden contener valores duplicados y cuyos valores no se pueden cambiar. Por ejemplo, si estás haciendo una lista de ID de compra en una tienda de comestibles, querrás que cada ID sea único y no querrás que nadie pueda cambiar los valores en tu lista.

Ahí es donde entra el objeto de conjunto de Python. Un conjunto es una colección desordenada de elementos que solo pueden contener valores únicos.

Este tutorial discutirá, con referencia a ejemplos, los conceptos básicos de los conjuntos de Python y cómo puede realizar operaciones comunes como agregar y eliminar valores en un conjunto.




Conjuntos de Python

La estructura de datos de conjuntos incorporada de Python es similar a la idea de conjuntos en matemáticas.

Los conjuntos de Python pueden contener cero o más elementos, y no hay un orden definido para cada elemento en el conjunto. Cada elemento almacenado dentro de un conjunto es único, por lo que no pueden existir duplicados y cada valor individual en el conjunto no se puede cambiar.

Aunque los valores individuales de un conjunto no se pueden cambiar, el conjunto en sí puede ser. Esto significa que podemos agregar o eliminar elementos de nuestro conjunto.

La estructura del conjunto es útil porque viene con una serie de operaciones matemáticas que podemos usar para trabajar con los datos que tenemos almacenados en un conjunto.




Crear un conjunto de Python

En Python, los conjuntos se definen como una lista de elementos (o "elementos") separados por comas. Luego, la lista se encierra entre llaves ({}).

El 81% de los participantes afirmaron que se sentían más seguros acerca de sus perspectivas laborales después de asistir a un campamento de entrenamiento. Asóciese a un bootcamp hoy.

El graduado promedio de bootcamp pasó menos de seis meses en la transición de carrera, desde comenzar un bootcamp hasta encontrar su primer trabajo.

Los conjuntos de Python pueden almacenar cualquier número de elementos, y cada elemento de un conjunto puede utilizar diferentes tipos de datos. Entonces, un conjunto puede almacenar tanto un número entero como una cadena, o una cadena, un flotante y una tupla. Sin embargo, los conjuntos no pueden almacenar tipos de datos mutables, como otro conjunto, un diccionario o una lista.

Supongamos que queremos crear un conjunto que almacene una lista de tareas que un estudiante ha entregado. una clase de inglés. Podríamos crear este conjunto usando el siguiente código:

 asignaciones = {"Hoja de trabajo # 4", "Hoja de trabajo n. ° 5", "Hoja de trabajo n. ° 7", "Fin de la revisión del tema n. ° 2"} imprimir (asignaciones) 

Nuestro código devuelve:

{& lsquo; Hoja de trabajo # 5 & rsquo ;, & lsquo; Hoja de trabajo # 4 & rsquo ;, & lsquo; Hoja de trabajo # 7 & rsquo ;, & lsquo; Fin de la revisión del tema # 2 & rsquo;}

En nuestro código, definimos un conjunto llamado asignaciones que tiene cuatro valores. Luego, imprimimos el contenido de la asignación establecida en la consola. Puede ver que nuestros valores se devuelven en un orden aleatorio porque los conjuntos no almacenan sus elementos en ningún orden en particular. & Nbsp;





Cambio de un conjunto

Cuando ha creado un conjunto, no puede cambiar los valores de los elementos del conjunto. Sin embargo, puede agregar elementos y eliminar elementos de un conjunto.

Agregar elementos a un conjunto

Para agregar un elemento a un conjunto de Python, puede usar el código add () método. Supongamos que un estudiante acaba de entregar la Hoja de trabajo # 8 y queremos actualizar nuestro conjunto para realizar un seguimiento de la tarea del estudiante que se está entregando. Podríamos hacerlo usando este código:

Nuestro código devuelve:

{& lsquo; Hoja de trabajo # 8 & rsquo ;, & lsquo; Hoja de trabajo # 4 & rsquo ;, & lsquo; Hoja de trabajo # 5 & rsquo ;, & lsquo; Fin de la revisión del tema # 2 & rsquo ;, & lsquo; Hoja de trabajo # 7 & rsquo;}

Como puede ver, Hoja de trabajo # 8 se ha agregado a nuestro conjunto.

Además, si desea agregar varios elementos a un conjunto, puede usar update ()  método. El método update () acepta una lista de elementos a los que desea agregar a un conjunto como parámetro, luego agrega esos elementos a un conjunto.

Suponga que el estudiante ha entregado ambas hojas de trabajo # 8 y # 9. Podríamos cambiar nuestro conjunto para reflejar estas nuevas asignaciones que se entregan usando este código:

 asignaciones = {"Hoja de trabajo n. ° 4", "Hoja de trabajo n. ° 5", "Hoja de trabajo n. ° 7", "Fin de la revisión del tema n. ° 2"} asignaciones.update (["Hoja de trabajo n. ° 8", "Hoja de trabajo n. ° 9"]) imprimir (asignaciones) 

Nuestro código devuelve:

{& lsquo; Hoja de trabajo # 9 & rsquo ;, & lsquo; Fin de la revisión del tema # 2 & rsquo ;, & lsquo; Hoja de trabajo # 8 & rsquo ;, & lsquo; Hoja de trabajo # 7 & rsquo ;, & lsquo; Hoja de trabajo # 4 & rsquo ;, & lsquo; Hoja de trabajo # 5 & rsquo;}

Ahora nuestro conjunto contiene dos nuevos valores: Hoja de trabajo # 8 y Hoja de trabajo n. ° 9 .

Eliminar elementos de un conjunto

Para eliminar un elemento de un conjunto, puede utilizar discard () o remove () .

La función discard () elimina un elemento de un conjunto y no devuelve nada si un elemento no existe en un conjunto. La función remove () intentará eliminar un elemento de un conjunto, y si ese elemento no existe, se generará un error.

Supongamos que queremos eliminar la Hoja de trabajo n. ° 9 de nuestro registro de las asignaciones de tarea de un estudiante porque se le ha pedido que vuelva a hacer la tarea. Podríamos hacerlo usando este código:

"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, encontré el trabajo de mis sueños que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot

Nuestro código devuelve:

{& lsquo; Fin de la revisión del tema # 2 & rsquo ;, & lsquo; Hoja de trabajo # 5 & rsquo ;, & lsquo; Hoja de trabajo # 4 & rsquo ;, & lsquo; Hoja de trabajo # 8 & rsquo ;, & lsquo; Hoja de trabajo # 7 & rsquo;}

Puede ver que el valor Worksheet # 9 ha sido eliminado de nuestro conjunto. Logramos esto usando el método discard () .

Borrar un conjunto

Para borrar un conjunto, puede usar el clear () método. Supongamos que queremos borrar un registro de las tareas de un estudiante porque es fin de año y ya no necesitamos almacenar la información. Podríamos hacerlo usando este código:

 asignaciones = {'Hoja de trabajo # 9',' Fin de Revisión del tema # 2', 'Hoja de trabajo # 8',' Hoja de trabajo # 7', 'Hoja de trabajo # 4',' Hoja de trabajo # 5'} asignaciones.clear () imprimir (asignaciones) 

Nuestro código devuelve: {}. Esto refleja nuestro conjunto vacío.





Longitud de retorno de un conjunto

Para saber cuántos elementos se almacenan en un conjunto, puede utilizar el código len () método.

Supongamos que queremos averiguar cuántas tareas ha entregado un estudiante. Podríamos hacerlo usando este código:

 asignaciones = {' Hoja de trabajo # 9', 'Fin de la revisión del tema # 2',' Hoja de trabajo # 8', 'Hoja de trabajo # 7',' Hoja de trabajo # 4', 'Hoja de trabajo # 5'} print (len (asignaciones)) 

Nuestro código devuelve: 6. En nuestro código, primero declaramos un conjunto llamado asignaciones . Luego, usamos el método len () para averiguar cuántos elementos se almacenan en el conjunto de asignaciones .




Python Operaciones de conjuntos

Una de las ventajas de utilizar un conjunto para almacenar datos es que los conjuntos admiten conjuntos matemáticos operaciones. Veamos cómo funcionan tres de las operaciones de conjuntos principales.

Estas operaciones de conjuntos no cambian el contenido de un conjunto. En su lugar, realizan un cálculo en un conjunto existente.

Unión de conjuntos

El método union () nos permite crear un conjunto de todos elementos de dos conjuntos.

Suponga que tenemos dos listas de tareas de un estudiante que queremos fusionar. Una lista contiene datos sobre la tarea de un estudiante y la otra contiene una lista de las tareas de ensayo que el estudiante ha completado. Podríamos fusionar estas listas usando este código:

 asignaciones = {"Hoja de trabajo # 4", " Hoja de trabajo n. ° 5 "," Hoja de trabajo n. ° 7 "} ensayos = {" Ensayo n. ° 1 "," Ensayo n. ° 2 "} tarea = asignaciones.union (ensayos) imprimir (tarea) 

Nuestro devuelve el código:

{& lsquo; Hoja de trabajo # 7 & rsquo ;, & lsquo; Ensayo # 2 & rsquo ;, & lsquo; Hoja de trabajo # 4 & rsquo ;, & lsquo; Ensayo # 1 & rsquo ;, & lsquo; Hoja de trabajo # 5 & rsquo;} < br>

En nuestro código, usamos el método union () para fusionar nuestros dos conjuntos. Asignamos el valor del conjunto recién fusionado a la variable tarea . Luego, imprimimos el valor de la variable tarea .

Alternativamente, podríamos haber usado el siguiente código:

 asignaciones = {"Hoja de trabajo n. ° 4", "Hoja de trabajo n. ° 5", "Hoja de trabajo n. ° 7"} ensayos = {"Ensayo n. ° 1", "Ensayo # 2"} imprimir (tareas | ensayos) 

El & ldquo; | & rdquo; El operador realiza una operación de conjunto de unión. Nuestro código devuelve un conjunto combinado:

{& lsquo; Ensayo # 2 & rsquo ;, & lsquo; Hoja de trabajo # 4 & rsquo ;, & lsquo; Hoja de trabajo # 5 & rsquo ;, & lsquo; Ensayo # 1 & rsquo ;, & lsquo; Hoja de trabajo # 7 & rsquo;}

Establecer intersección

El método intersection () le permite generar una lista de elementos que son comunes entre dos conjuntos. < br>

Supongamos que tenemos una lista de ensayos que ha entregado un estudiante y una lista de ensayos que se han emitido. Si quisiéramos saber qué ensayos aún no ha entregado un estudiante, podríamos utilizar un método de intersección.


Aquí está el código que usaríamos:

 essays_handed_in   

Nuestro código devuelve:

{& lsquo; Ensayo # 1 & rsquo ;, & lsquo; Ensayo # 2 & rsquo;}

En este ejemplo , usamos el método intersection () para encontrar todos los elementos que existen en los conjuntos essays_handed_in y essays_issued . Asignamos el resultado de la intersección operación a la variable due , que luego imprimimos en la consola.

Además, podemos usar el operador & amp; para realizar una operación de intersección de conjuntos. Por lo tanto, si quisiéramos realizar una intersección en nuestros dos conjuntos de antes, podríamos usar este código:

 essays_handed_in = {"Ensayo # 1", "Ensayo # 2 "} essays_issued = {" Ensayo n. ° 1 "," Ensayo n. ° 2 "," Ensayo n. ° 3 "} imprimir (ensayos_en mano_en & amp; essays_issued) 

Nuestro código devuelve:

{& lsquo; Ensayo # 1 & rsquo ;, & lsquo; Ensayo # 2 & rsquo;}

Establecer diferencia

El método difference () le permite averiguar qué elementos están presentes en un conjunto que no están presentes en otro conjunto.

Supongamos que quisiéramos generar una lista de todos los ensayos que un estudiante ha entregado y que aún no se han calificado. Podríamos hacerlo usando este código:

 essays_handed_in = {"Ensayo # 1", "Ensayo # 2 "} essays_graded = {" Essay # 1 "} final = essays_handed_in.difference (essays_graded) print (final) 

Nuestro código devuelve:

{& ldquo; Ensayo # 2 & rdquo;}

En este código, usamos el método difference () para encontrar la diferencia entre essays_handed_in y conjuntos de essays_graded . Alternativamente, podríamos usar el operador - , así:

 essays_handed_in = {"Ensayo n. ° 1", "Ensayo n. ° 2"} essays_graded = {"Ensayo n. ° 1"} imprimir (ensayos_handed_in - ensayos_gradados) 

Nuestro código devuelve:

{& ldquo; Ensayo # 2 & rdquo;}

El mismo resultado se devuelve en nuestro código. Pero en lugar de usar el método de conjunto difference () , usamos el operador - , que realiza una verificación para encontrar la diferencia entre dos conjuntos.




Conclusión

La estructura de datos del conjunto de Python le permite almacenar colecciones de elementos desordenadas.

Cada elemento de un conjunto debe ser único, por lo que no pueden existir duplicados, y el contenido de un conjunto no se puede cambiar una vez que se agregan al conjunto.

Este tutorial analiza, con referencia a ejemplos, los conceptos básicos de los conjuntos de Python y las operaciones principales que ofrecen los conjuntos. < br>

Solo hemos arañado la superficie de lo que puede hacer con los conjuntos, aunque "todavía hay más por explorar", pero cubrimos las principales habilidades que necesita saber para trabajar de manera eficaz con conjuntos . ¡Ahora está listo para comenzar a usar el método Python set () como un profesional!


Python se usa en entornos de desarrollo profesional alrededor del world para todo, desde el análisis de datos hasta el desarrollo web. Descarga la aplicación gratuita Career Karma hoy para obtener más información sobre las trayectorias profesionales en la programación de Python.





conjunto de Python: StackOverflow Questions