Listas vs tuplas vs conjuntos en Python
Python tiene tres formas habituales de guardar varios valores juntos. Una lista puede cambiar y conserva el orden, una tupla es un registro fijo y un conjunto olvida duplicados. Cada ejemplo de abajo se ejecutó, y la salida mostrada es exacta.
Listas: orden, y pueden cambiar
Una lista es la colección por defecto: append añade al final, y un bucle for recorre los elementos en orden. Usa una lista cuando el grupo crezca o mengüe, como un inventario.
parts = ["wrench"]
parts.append("cable")
print(parts)Salida:
['wrench', 'cable']
Tuplas: un registro fijo
Una tupla no se puede editar in situ. Eso la hace adecuada para una coordenada o cualquier par que quieras desempaquetar en dos nombres. Devolver dos valores de una función también construye una tupla.
point = (3, 4) x, y = point print(x) print(y)
Salida:
3 4
Conjuntos: elementos únicos
Un conjunto tira duplicados y responde rápido a "¿está esto aquí?". El conjunto vacío es set(), porque {} es un diccionario vacío. set(needed) <= set(have) pregunta si cada elemento necesario ya está presente.
needed = {"wrench", "cable"}
have = ["wrench", "cable", "chip", "wrench"]
print(needed <= set(have))Salida:
True
Preguntas frecuentes
- ¿Puedo usar una tupla como clave de diccionario?
- Sí, porque una tupla no puede cambiar. Una lista no puede ser clave. Esa es una razón por la que las coordenadas suelen ser tuplas.
- ¿Cómo hago un conjunto vacío?
- Llama a set(). Escribir {} te da un diccionario vacío.
- ¿Cuándo elijo un conjunto en vez de una lista?
- Cuando los duplicados no importan y te importa la pertenencia, como "¿tengo cada pieza de esta receta?"