Agregar a la lista en el diccionario de Python [duplicado]
Esta pregunta ya tiene una respuesta aquí:
Inicializar lista a una variable en un diccionario dentro de un bucle 2 respuestas¿Hay alguna forma más elegante de escribir este código?
Lo que estoy haciendo: tengo llaves y fechas. Puede haber varias fechas asignadas a una clave y, por lo tanto, estoy creando un diccionario de listas de fechas para representar esto. El siguiente código funciona bien, pero esperaba un método más elegante y pitónico.
dates_dict = dict()
for key, date in cur:
if key in dates_dict:
dates_dict[key].append(date)
else:
dates_dict[key] = [date]
Esperaba que lo siguiente funcionara, pero sigo obteniendo un NoneType que no tiene ningún error de agregado de atributo.
dates_dict = dict()
for key, date in cur:
dates_dict[key] = dates_dict.get(key, []).append(date)
Esto probablemente tiene algo que ver con el hecho de que
print([].append(1))
None
¿pero por qué?