【发布时间】:2013-07-02 04:28:58
【问题描述】:
首先,我想指出我是一个python新手,我对编码完全没有经验,所以请耐心等待。我已经搜索了我的问题的答案,但没有成功。 我有一堆文本格式的名称和团队:
Team (year)|Surname1, Name1
例如
Yankees (1993)|Abbot, Jim
Yankees (1994)|Abbot, Jim
Yankees (1993)|Assenmacher, Paul
Yankees (2000)|Buddies, Mike
Yankees (2000)|Canseco, Jose
等了几年和几个团队。 我想根据球队(年份)组合汇总球员姓名,删除任何重复的名字(可能会发生在原始数据库中存在一些冗余信息)。在示例中,我的输出应该是:
Yankees (1993)|Abbot, Jim, Assenmacher, Paul
Yankees (1994)|Abbot, Jim
Yankees (2000)|Buddies, Mike, Canseco, Jose
到目前为止,我已经编写了这段代码:
file_in = open('filein.txt')
file_out = open('fileout.txt', 'w+')
from collections import defaultdict
teams = defaultdict(set)
for line in file_in:
items = [line.split('|')]
team = items[0]
name = items[1]
teams[team].add(name)
我最终得到一个由键(团队名称和年份)和值集组成的大字典。但我不知道如何继续聚合。
我还可以比较我的最终值集(例如,洋基队 1993 年和 1994 年有多少球员有共同点?)。我该怎么做?
感谢任何帮助
【问题讨论】:
-
我已将其删除并进行了编辑。它怎么可能仍然存在?
-
拥有 10k+ 代表的人可以查看已删除的问题,所以不要试图表现得聪明。
-
好吧,对不起......我不是故意打扰,我不知道观看政策。
-
“聚合事物”是什么意思?看起来您拥有的字典正是您想要的?
标签: python text python-2.7