Sobes.tech
Junior

¿Cuáles pueden ser las claves en los diccionarios en Python?

sobes.tech AI

Respuesta de la IA

Las claves en los diccionarios de Python pueden ser cualquier objeto inmutable (hashable).

Los tipos de datos inmutables incluyen:

  • Números enteros (int)
  • Números de punto flotante (float)
  • Cadenas (str)
  • Tuplas (tuple) que contienen solo elementos inmutables
  • Valores booleanos (bool)
  • NoneType (None)
  • Frozenset (frozenset) que contiene solo elementos inmutables

Ejemplos de claves permitidas:

# Claves permitidas
my_dict = {
    1: "uno",
    3.14: "pi",
    "clave": "valor",
    (1, 2): "tupla",
    True: "verdadero",
    None: "ninguno",
    frozenset({1, 2}): "conjunto inmutable"
}

Los objetos inmutables tienen un hash que se usa para búsquedas rápidas en el diccionario.

Los tipos de datos mutables, como listas (list), conjuntos (set) y otros diccionarios (dict), no pueden ser claves de un diccionario, ya que su contenido puede cambiar, lo que rompería la integridad del hash.

Ejemplos de claves no permitidas:

# Claves no permitidas (generará TypeError)
# my_dict = {
#     [1, 2]: "lista",
#     {1, 2}: "conjunto",
#     {"a": 1}: "otro diccionario"
# }