Konwertowanie pliku csv na listę krotek z python

Mam wziąć csv z 4 kolumnami: marka, cena, waga i typ.

Rodzaje są pomarańczowe, jabłkowe, gruszkowe, śliwkowe.

Parametry: Muszę wybrać największą możliwą wagę, ale wybierając 1 pomarańczowy, 2 gruszki, 3 jabłka i 1 śliwkę, nie przekraczając 20 $ budżetu. Nie mogę powtórzyć marek tego samego owocu (np. Wybór tej samej marki jabłek 3 razy itp.).

Mogę otworzyć i odczytać plik csv za pomocą Pythona, ale nie jestem pewien, jak utworzyć słownik lub listę krotek z pliku csv?

Dla większej przejrzystości, oto idea danych.

Brand, Price, Weight, Type
brand1, 6.05, 3.2, orange
brand2, 8.05, 5.2, orange
brand3, 6.54, 4.2, orange
brand1, 6.05, 3.2, pear
brand2, 7.05, 3.6, pear
brand3, 7.45, 3.9, pear
brand1, 5.45, 2.7, apple
brand2, 6.05, 3.2, apple
brand3, 6.43, 3.5, apple
brand4, 7.05, 3.9, apple
brand1, 8.05, 4.2, plum
brand2, 3.05, 2.2, plum

Oto wszystko, co mam teraz:

import csv
test_file = 'testallpos.csv'
csv_file = csv.DictReader(open(test_file, 'rb'), ["brand"], ["price"], ["weight"], ["type"])

questionAnswers(2)

yourAnswerToTheQuestion