Прежде всего, я хотел бы указать, что я новичок в python, и я совершенно неопытен в кодировании, поэтому, пожалуйста, будьте терпеливы. Я уже искал ответ на свою проблему, но без успеха. У меня есть куча строк в тексте с именами и команд в этом формате:Совокупные текстовые ключи-значения python defaultdict
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 годов?). Как я могу это сделать?
любая помощь
Пожалуйста, не оставляйте тот же вопрос снова и again.http: // StackOverflow .com/questions/17411998/python-aggregate-keys-and-values-defaultdict и http://stackoverflow.com/questions/17405541/aggregate-sets-according-to-keys-with-defaultdict-python. –
Я удалил его и отредактировал. Как это возможно, что все еще присутствует? – user2447387
Люди с 10k + rep могут просматривать удаленный вопрос, поэтому не пытайтесь действовать умным. –