AnyCompiler

Sets (Conjuntos)

Un set es una colección sin orden con una sola regla que lo define: todos sus valores son únicos. Si añades un duplicado no pasa nada — ya estaba ahí.

numbers = {1, 2, 3, 2, 1}
print(numbers)

numbers.add(4)
print(numbers)

a = {1, 2, 3}
b = {2, 3, 4}
print(a | b)
print(a & b)
print(a - b)
Output
{1, 2, 3}
{1, 2, 3, 4}
{1, 2, 3, 4}
{2, 3}
{1}
  • {1, 2, 3, 2, 1} se reduce a {1, 2, 3} en el momento en que se crea — los duplicados simplemente no sobreviven
  • | es la unión — todo lo que está en cualquiera de los dos sets
  • & es la intersección — solo lo que está en ambos
  • - es la diferencia — lo que está en el primer set pero no en el segundo

Esto es realmente útil, no solo una curiosidad: eliminar duplicados de una lista es tan simple como list(set(my_list)), y comprobar si dos colecciones se solapan está a un solo & de distancia.

Siguiente: sentencias condicionales — hacer que tu código realmente se bifurque según un valor.

Ejercicio de práctica

Crea a = {1, 2, 3} y b = {2, 3, 4}. Imprime su intersección usando a & b.