Introducción a los conjuntos de Python

En este artículo, vamos a discutir conjuntos en Python. Python es un lenguaje muy versátil y se está convirtiendo rápidamente en uno de los lenguajes de referencia en el campo de la ciencia de datos, ya que es fácil de leer y escribir y también se basa en el concepto de OOP. Set es una colección desordenada que está representada por llaves en Python. Desordenado aquí significa que no está seguro en qué orden aparecerán los artículos. Set es diferente de una lista que solo puede almacenar elementos únicos y no elementos duplicados.

Sintaxis:

Como en general Python, la sintaxis es generalmente fácil. La sintaxis para el conjunto de Python es la siguiente:

firstset = ("Johnny", "Nilanjan", "Rupa")
print(firstset)

Aquí, el primer conjunto es el nombre de la variable en la que se almacena el conjunto. Las llaves () representan el conjunto y, dado que estamos agregando valores de cadena, se requieren comillas dobles / simples invertidas. Los valores en el conjunto están separados por comas. Ahora, como hemos visto la sintaxis del conjunto con un ejemplo en Python. Discutamos ahora los diferentes métodos utilizados en los conjuntos de Python.

Diferentes métodos en conjuntos de Python

Veamos los diferentes métodos presentes como Python incorporado para conjuntos.

1. add (): como su nombre indica, solía agregar un nuevo elemento en el conjunto. Significa que está aumentando el número de elementos en el conjunto en uno. Aquí, un conocimiento muy importante sobre el conjunto que debe tenerse en cuenta es que el elemento solo se agrega si no está presente en los activos del conjunto y no toma elementos duplicados. El método add tampoco devuelve ningún valor. Hagamos un ejemplo.

Código:

firstset = ("Johnny", "Nilanjan", "Rupa")
firstset.add("Sepoy")
print("The new word is", firstset)
#to check duplicate property of Set
firstset.add("Sepoy")
print("The new word is", firstset)

Ahora la siguiente captura de pantalla es la salida del código cuando se ejecuta en Jupyter Notebook.

Si ve la salida la primera vez, cuando se usa la función add (), agrega el elemento y el tamaño del conjunto aumenta en uno, como se muestra cuando ejecutamos la primera instrucción de impresión, pero la segunda vez cuando usamos el método add () para agregar el mismo elemento (sepoy) como la primera vez, al ejecutar la declaración de impresión, vemos que se muestran los mismos elementos sin aumentar el tamaño del conjunto, lo que significa que ese conjunto no toma valores duplicados.

2. clear (): como su nombre indica, elimina todos los elementos del conjunto. No toma ningún parámetro ni devuelve ningún valor. Simplemente tenemos que llamar al método clear y ejecutarlo. Veamos un ejemplo:

Código:

firstset = ("Johnny", "Nilanjan", "Rupa")
print("Before clear", firstset)
firstset.clear()
print("After clear", firstset)

Veamos el resultado después de ejecutar el mismo código en el jupyter Notebook.

Entonces, la captura de pantalla anterior muestra que antes de ejecutar el método clear, la lista se imprimió con elementos y luego, cuando ejecutamos el método clear (), todos los elementos se eliminaron y nos queda un conjunto vacío.

3. copy (): este método se utiliza para crear una copia superficial de un conjunto. El término copia superficial significa que si agrega nuevos elementos en el conjunto o elimina elementos del conjunto, el conjunto original no cambia. Es la ventaja básica de usar la función de copia. Veremos un ejemplo para comprender el concepto de copia superficial.

Código:

originalset = ("Johnny", "Nilanjan", "Rupa")
copiedset = originalset.copy()
print("originalset:: ", originalset)
print("copiedset:: ", copiedset)
# modify the copiedset to check shallow copy feature
copiedset.add("Rocky")
print("originalset:: ", originalset)
print("copiedset:: ", copiedset)

Ahora, verifiquemos la salida en Jupyter Notebook.

Como puede ver, cuando solíamos agregar funciones para agregar un nuevo elemento en el conjunto copiado, el conjunto copiado se modificó pero el conjunto original seguía siendo el mismo.

4. diferencia (): Esta es una función muy importante insertada. Esta función devuelve un conjunto que es la diferencia entre dos conjuntos. Tenga en cuenta que aquí diferencia no significa resta porque aquí es la diferencia entre el número de elementos en dos conjuntos y no los valores de los elementos. Aquí, por ejemplo, el conjunto A1 - el conjunto A2 significa que devuelve un conjunto con elementos presentes en A1 pero no en A2 y viceversa en el caso del conjunto A2 - conjunto A1 (presente en A2 pero no en A1). Lo mismo se explicará a continuación con la ayuda de un ejemplo.

Código:

A1= (24, 35, 34, 45)
A2= (24, 56, 35, 46)
print(A1.difference(A2))
print(A2.difference(A1))

Ahora echemos un vistazo a la salida proporcionada en la captura de pantalla a continuación.

Ahora, en la captura de pantalla anterior, si observa cuidadosamente, hay una diferencia entre el primer y el segundo resultado. En el primer resultado, se muestran los elementos que están en A pero no en B, mientras que en el segundo resultado se muestran elementos presentes en B pero no en A.

5. intersección (): es muy diferente del conjunto integrado del método anterior. En este caso, solo los elementos que son comunes en los conjuntos o en conjuntos múltiples (en el caso de más de dos conjuntos) se devuelven en forma de conjunto. Ahora veamos un ejemplo.

Código:

A1= (24, 35, 34, 45)
A2= (24, 56, 35, 46)
A3= (24, 35, 47, 56)
print(A1.intersection(A2, A3))

Como puede ver, los tres conjuntos solo tenían dos elementos en común, que son 24 y 35. Por lo tanto, al ejecutar el código, devolvió un conjunto que contenía solo 24 y 35.

6. union (): es una función que devuelve un conjunto con todos los elementos del conjunto original y también los conjuntos especificados. Como devuelve un conjunto, todos los elementos tendrán una sola apariencia. Si dos conjuntos contienen el mismo valor, el elemento aparecerá solo una vez.

Código:

A1= (24, 35, 34, 45)
A2= (24, 56, 35, 46)
A3= (24, 35, 47, 56)
print(A1.union(A2, A3))

En la captura de pantalla anterior, puede ver la salida del código en la ejecución. Si observa detenidamente, encontrará todos los valores de A1 y todos los valores únicos de los otros dos conjuntos.

7. issubset (): esta función devuelve valores booleanos que son verdaderos o falsos. Si todos los elementos de un conjunto están presentes en otro conjunto, devuelve verdadero, de lo contrario, falso. Veremos un ejemplo de lo mismo para entenderlo mejor.

Código:

A1 =(3, 6, 8)
A2 =(45, 87, 3, 67, 6, 8)
print(A1.issubset(A2))
print(A2.issubset(A1))

Si ve la captura de pantalla de salida anterior, puede ver que A2 tiene todos los elementos de A1 pero A1 no tiene todos los elementos de A2. Por lo tanto, A1 es un subconjunto de A2.

8. issuperset (): esta función devuelve valores booleanos que son verdaderos o falsos. Si un conjunto contiene todos los elementos de otro conjunto, ese conjunto puede llamarse un superconjunto del otro conjunto y el valor devuelto por la función es verdadero, de lo contrario es falso. Veremos un ejemplo de lo mismo para entenderlo mejor.

Código:

A1 = (3, 6, 8)
A2 = (45, 87, 3, 67, 6, 8)
print(A1.issuperset(A2))
print(A2.issuperset(A1))

Como puede ver en la captura de pantalla de salida, el segundo conjunto A2 contiene todos los elementos del conjunto A1. Por lo tanto, es un superconjunto de A1. Lo mismo no es cierto para A1 con respecto a A2, por lo tanto, devuelve falso.

9. remove (): esta función se utiliza para eliminar elementos del conjunto. Los elementos a eliminar se pasan como argumentos. La función elimina el elemento si está presente en el conjunto; de lo contrario, devuelve un error. Ejecutaremos un ejemplo para verificar esto.

Código:

firstset = ("Johnny", "Nilanjan", "Rupa")
firstset.remove("Nilanjan")
print(firstset)
# to check error
firstset.remove("Rocky")

Si ve la captura de pantalla anterior cuando se ejecuta el código, elimina el elemento "Nilanjan" como estaba presente en el conjunto, pero cuando intentamos eliminar "Rocky" nos da un error ya que "Rocky" no está presente en el conjunto.

10. descartar (): este método incorporado también se usa para eliminar elementos del conjunto, pero es diferente del método de eliminación que discutimos anteriormente. Si el elemento está presente en el conjunto, lo elimina pero si está presente no devuelve ningún error y normalmente solo imprime el conjunto. Veremos un ejemplo de esto

Código:

firstset = ("Johnny", "Nilanjan", "Rupa")
firstset.discard("Nilanjan")
print(firstset)
firstset.discard("Rocky")
print(firstset)

Si vemos la captura de pantalla anterior, podemos ver que a pesar de que "Rocky" no está presente en el conjunto, no vemos que se muestre ningún error, a diferencia del caso del método de eliminación donde se mostró un error.

Conclusión

Hemos discutido en este artículo el concepto de conjuntos en python y las diferentes funciones que se pueden usar o aplicar en conjuntos. Los conjuntos, como se discutió, son importantes en python y los métodos integrados se utilizan para manipular los conjuntos y también para realizar operaciones con conjuntos.

Artículos recomendados

Esta es una guía de los conjuntos de Python. Aquí discutimos la introducción de los conjuntos de Python, diferentes métodos en conjuntos de Python junto con la sintaxis. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Matriz de cadenas en Python
  2. ¿Qué es python?
  3. PNL en Python
  4. ¿Python es un lenguaje de script?
  5. Características de Python
  6. Matriz de cadenas en JavaScript
  7. Guía completa de matriz de cuerdas en C