我是Python新手,需要閱讀csv文件並保留重複項目的最低價格。 例子:在csv文件中保留重複項目的最低價格
輸入文件:
name, link, price, category
item1, http://example.com/item1, 29.30, cat1
item2, http://example.com/item2, 22, cat2
item1, http://example.com/item1, 19.90, cat1
輸出文件:
name, link, price, category
item2, http://example.com/item2, 22, cat2
item1, http://example.com/item1, 19.90, cat1
這裏是我到目前爲止的代碼:
f1 = csv.reader(open('input.csv', 'rb'), delimiter=',')
writer = csv.writer(open("output.csv", "wb"))
name = set()
for row in f1:
if row[0].lower() not in (i.lower() for i in name):
writer.writerow(row)
name.add(row[0])
我可以用這個代碼刪除重複的,但我需要幫助,以保持物品的最低價格。
謝謝!
嘿@Padraic,我很抱歉,但我忘了提及在我的輸入文件中有兩個其他列。 coloumns:名稱,鏈接,價格,類別 我認爲解決方案會因此而改變,對嗎?對不起。 – bleroy 2015-02-05 18:25:20
你只想要兩個? – 2015-02-05 18:26:34
不,我希望輸出的格式與輸入相同:名稱,鏈接,價格,類別 – bleroy 2015-02-05 18:27:32