csv唯一值而不考虑列

时间:2015-04-11 15:43:18

标签: python csv

我有一个csv:

name1, age1, location1, phone1
name1, age1, location2, phone1
name1, age1, location3, phone1
name2, age2, location4, phone2

在上面的数据中,三行几乎相同,只有位置不同。我只想要三个相似行中的一行(任何人都可以工作)。所以我的最终输出将是:

name1, age1, location1, phone1
name2, age2, location4, phone2

name1, age1, location2, phone1
name2, age2, location4, phone2

name1, age1, location3, phone1
name2, age2, location4, phone2

我们有什么方法可以在python中完成。任何建议都非常有用。

1 个答案:

答案 0 :(得分:2)

您可以使用包含唯一字段的字典作为键:

data = {}
for name, age, location, phone in csv_data:
    data[name, age] = (name, age, location, phone)

所以你总是保留最后一个条目。