Aprende a dominar tuplas y sets en Python con ejemplos claros y prácticos. Verás cómo declararlos, cómo acceder a sus elementos, qué implica su inmutabilidad y cómo aplicar operaciones de teoría de conjuntos como intersección, unión y diferencia. Además, conocerás los únicos métodos públicos de las tuplas: count e index.
¿Cómo declarar y usar tuplas en Python?
Las tuplas se pueden declarar separando valores por comas o usando paréntesis. Funcionan como secuencias: permiten acceso por índice iniciando en cero. Son ideales cuando necesitas una colección constante que no cambiará.
¿Cómo se declaran las tuplas?
Por comas o con paréntesis: ambas formas producen una tupla.
a =1,2,3print(type(a))# <class 'tuple'>a =(1,2,3)print(type(a))# <class 'tuple'>
Acceso por índice desde 0.
print(a[0])# 1print(a[1])# 2# La tercera posición está fuera del rango de esta tupla.
¿Qué implica la inmutabilidad en tuplas y strings?
Las tuplas son inmutables: no se pueden modificar por asignación de ítems.
Intentar reasignar un elemento produce el error: "tuple object does not support item assignment".
Con los strings ocurre lo mismo: también son inmutables en Python.
a =(1,2,3)a[0]=10# TypeError: tuple object does not support item assignment
¿Qué hacen los métodos count e index?
Las tuplas tienen solo dos métodos públicos: count e index.
count(x): cuántas veces aparece x.
index(x): índice de la primera aparición de x.
a =(1,1,1,2,3)print(a.count(1))# 3print(a.count(2))# 1print(a.index(1))# 0print(a.index(3))# 4
Habilidades y conceptos clave:
Inmutabilidad y errores por asignación de ítems.
Uso de índices y límites de rango.
Métodos count e index para consulta de datos.
¿Cómo crear y operar con sets en Python?
Los sets son colecciones sin orden implícito y sin duplicados. No permiten acceso por índice, pero ofrecen operaciones de conjuntos y métodos como add y remove. Son perfectos para verificar pertenencia y combinar elementos únicos.
¿Cómo se declaran los sets?
Con la palabra reservada keywordset a partir de un iterable.
Con llaves {} listando elementos únicos.
A =set([1,2,3])# a partir de una listaB ={3,4,5}# notación con llavesprint(type(A),type(B))# <class 'set'> <class 'set'>
Nota: en Python las llaves también se usan para diccionarios; en sets no hay pares clave-valor.
¿Por qué no hay índice ni duplicados?
No existe orden definido, por eso no hay índice.
No admite duplicados. Usar .add (no append) para añadir elementos.
A.add(3)# no cambia: 3 ya existeA.add(20)# se agrega 20print(A)# {1, 2, 3, 20}
¿Qué operaciones de conjuntos aplican?
Intersección: elementos comunes.
Unión: todos los elementos sin duplicados.
Diferencia: elementos de un set que no están en el otro. Es direccional.