AttributeError: el objeto 'Dict' no tiene atributo 'Agregar' en Python

Shihab Sikder 21 junio 2023
  1. el AttributeError: el objeto 'dict' no tiene atributo 'append' en Python
  2. Manejar el AttributeError: el objeto 'dict' no tiene atributo 'append' en Python
AttributeError: el objeto 'Dict' no tiene atributo 'Agregar' en Python

dict es una estructura de datos que utiliza el mapa hash, que difiere de la lista. No tiene la función append(), mientras que la estructura de datos de la lista tiene la función append().

el AttributeError: el objeto 'dict' no tiene atributo 'append' en Python

El diccionario puede contener una lista en su interior. No podemos agregar directamente el diccionario, pero si hay una lista dentro del diccionario, podemos agregarla fácilmente.

Por ejemplo,

>>> dict = {}
>>> dict["numbers"]=[1,2,3]
>>> dict["numbers"]
[1, 2, 3]
>>> dict["numbers"].append(4)
>>> dict["numbers"]
[1, 2, 3, 4]

Aquí, la tecla números tiene una lista como valor. Podemos agregar esto, pero digamos que queremos agregar el dict.

Mostrará el siguiente error:

>>> dict = {}
>>> dict["numbers"]=[1,2,3]
>>> dict.append(12)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute 'append'

Manejar el AttributeError: el objeto 'dict' no tiene atributo 'append' en Python

El valor puede ser cualquier cosa: una tupla, una lista, una cadena o incluso otro diccionario. Para evitar este error, podemos verificar el tipo de valor de una clave en particular dentro de un diccionario.

Para esto, necesitamos evaluar si la clave existe dentro del diccionario o no.

Veamos el ejemplo a continuación:

dict = {}

dict["nums"] = [1, 2, 3]
dict["tuple"] = (1, 2, 3)
dict["name"] = "Alex"

if dict.get("name", False):
    if type(dict["name"]) is list:
        dict["name"].append("Another Name")
    else:
        print("The data type is not a list")
else:
    print("This key isn't valid")

Producción :

The data type is not a list

Nos podría dar el error como el anterior, pero aquí estamos evaluando la clave del diccionario. Luego verificamos si el valor es una lista o no.

Después de eso, agregaremos la lista.

Para saber más sobre el diccionario de Python, lea este blog.

Shihab Sikder avatar Shihab Sikder avatar

I'm Shihab Sikder, a professional Backend Developer with experience in problem-solving and content writing. Building secure, scalable, and reliable backend architecture is my motive. I'm working with two companies as a part-time backend engineer.

LinkedIn Website

Artículo relacionado - Python Error