I want to create a shopping list based on meal selections in an ecxel file.
What I have is a list list_flat_ingredients imported from a csv with this format:
[ingredient_amount, ingredient_unit, ingredient_name]
Example content:
[
    [1.0, "0", "Obst nach Wahl für Frühstücksbowl"],
    [1.0, "Stück", "Schalotten"],
    [1.0, "Stück", "Süßkartoffeln"],
    [1.0, "0", "Obst nach Wahl für Frühstücksbowl"],
    [500.0, "g", "Spätzle"],
    [100.0, "g", "Tunfisch (Dose)"],
    [1.0, "Laib", "Brot"],
    [250.0, "g", "Spaghetti"],
    [1.0, "0", "Spargel, grün"],
    [1.0, "Laib", "Brot"],
    [4.0, "Stück", "Burger Buns"],
    [1.0, "Stück", "Flammkuchenteig"],
    [1.0, "Laib", "Brot"],
    [1.0, "g", "Berglinsen"],
    [4.0, "Stück", "Wiener"],
    [1.0, "0", "Obst nach Wahl für Frühstücksbowl"],
    [1.0, "g", "Berglinsen"],
    [1.0, "Stück", "Baguette"],
    [1.0, "Laib", "Brot"],
    [150.0, "g", "Garnelen"],
    [1.0, "0", "Hirtenkäse "],
    [1.0, "Becher", "Joghurt"],
    [1.0, "Stück", "Fenchel"],
    [1.0, "Kopf", "Salat"],
    [1.0, "Becher", "Joghurt"],
    [200.0, "g", "Bergkäse"],
    [0.25, "Kopf", "Salat"],
    [1.0, "0", "Aufstrich nach Wahl für Frühstück"],
    [1.0, "0", "Eier"],
    [1.0, "0", "Zitrone"],
    [1.0, "0", "Aufstrich nach Wahl für Frühstück"],
    [1.0, "0", "Ziegencamembert "],
    [1.0, "0", "Hummus"],
    [1.0, "0", "Aufstrich nach Wahl für Frühstück"],
    [1.0, "0", "Paprika"],
    [1.0, "0", "Brezen"],
    [1.0, "Becher", "Joghurt"],
    [1.0, "0", "Paprika"],
    [100.0, "g", "Speck"],
    [1.0, "0", "Aufstrich nach Wahl für Frühstück"],
    [1.0, "0", "Reis nach Wahl"],
    [1.0, "0", "Paprika"],
    [1.0, "0", "Chiasamen"],
    [1.0, "0", "Lachs"],
    [1.0, "Stück", "Gurke"],
    [1.0, "0", "Chiasamen"],
    [2.0, "Stück", "Zwiebeln"],
    [2.0, "Stück", "Tomaten"],
    [0.0, "0", "0"],
    [1.0, "0", "Parmesan"],
    [1.0, "0", "Weißwein"],
    [0.0, "0", "0"],
    [1.0, "0", "Tomaten"],
    [1.0, "0", "Zucchini"],
    [0.0, "0", "0"],
    [1.0, "0", "Gurke"],
    [...]
]
What I then do is group and sum the elements with
for i, g in groupby(sorted(list_flat_ingredients), key=lambda x: x[2]):
    shopping_list_in_order.append([sum(v[0] for v in g), i])
The problem is that I loose the element ingredient_unit in the final output (example):
[
    [0.0, "0"],
    [0.25, "Salat"],
    [0.5, "Gurke"],
    [1.0, "Artischocken"],
    [4.0, "Aufstrich nach Wahl für Frühstück"],
    [1.0, "Brezen"],
    [1.0, "Burger Sauce"],
    [...],
]
Where and how do I need to add this in the code? THANKS!
 
     
    