Toevoegen aan lijst in Python-woordenboek

| | | | | |

Is er een elegantere manier om deze code te schrijven?

Wat ik doe: ik heb sleutels en datums. Er kan een aantal datums aan een sleutel worden toegewezen en daarom maak ik een woordenboek met lijsten met datums om dit weer te geven. De volgende code werkt prima, maar ik hoopte op een elegantere en Pythonische methode.

dates_dict = dict() voor key, date in cur: if key in dates_dict: dates_dict[key].append(date) else: dates_dict[key] = [date]  

Ik verwachtte dat het onderstaande zou werken, maar ik krijg steeds een NoneType heeft geen attribuut-toevoegfout.

dates_dict = dict() voor sleutel, datum in cur: dates_dict[key] = dates_dict.get(key, []).append(date) 

Dit heeft waarschijnlijk te maken met het feit dat

print([].append(1)) Geen 

maar waarom?