Tengo esta función que hace cambios en el diccionario.
a_dict = {"car": ["audi"],
"company": ["apple"]}
def add_dict(vehicle,brand,stuff):
for keyword in stuff:
if keyword == vehicle:
if brand not in stuff[keyword]:
stuff[keyword].append(brand)
break
else:
stuff[vehicle] = [brand]
break
add_dict("car","bmw",a_dict)
print(a_dict)
Este código agregará "bmw" a la clave "coche". Sin embargo, cuando ejecuto el código nuevamente, usando por ejemplo "mercedes" en lugar de bmw, restablece el diccionario al primero. Quiero que continúe agregando la lista actualizada.
En este momento, la else
cláusula se activa si hay al menos una clave que no coincide vehicle
. Arreglarlo así:
def add_to_dict(product_type, brand, product_dict):
if product_type in product_dict:
product_dict[product_type].append(brand)
else:
product_dict[product_type] = [brand]
product_dict = {}
add_to_dict("car", "audi", product_dict)
add_to_dict("car", "mercedes", product_dict)
add_to_dict("phone", "apple", product_dict)
print(product_dict)
# Output:
# {"car": ["audi","mercedes"], "phone": ["apple"]}
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras