Hi I’m building a dictionary where each key is a customer name and each value is a list of tuples which are purchased by each customer, like so: (product, quantity). For example:
{'customer1': (('milk', 3), ('bread', 5), ('eggs', 2)),
'customer2': (('cheese', 2), ('cereal', 7))}
I am populating the dictionary based on the results of a SQL query. Being a Java programmer new to Python, can someone suggest the “pythonic” way to do this? Each row from the query contains customer name, product, quantity.
First of all, I’d use lists rather than tuples as dictionary entries. The principal difference is that lists are mutable, whereas tuples are not.
I think
defaultdictis a good for for this problem:You can add entries like so (of course in your case you’d do this in a loop):
The result is: