У меня есть входной файл, из которого я пытаюсь построить базу данных.
Каждая строка выглядит следующим образом:
Amy Shchumer, Trainwreck, I Feel Pretty, Snatched, Inside Amy Shchumer
Bill Hader,Inside Out, Trainwreck, Tropic Thunder
И так далее.
Первая строка - актер \ актриса, а затем фильмы, в которых они сыграли.
Данные не отсортированы, и они представляют собой пробелы в конце.
Я хотел бы создать словарь, который будет выглядеть следующим образом:
{'Trainwreck': {'Amy Shchumer', 'Bill Hader'}}
Ключом будет фильм, значения должны быть актерами в нем, объединенными в заданный тип данных.
def create_db():
my_dict = {}
raw_data = open('database.txt','r+')
for line in raw_data:
lst1 = line.split(",") //to split by the commas
len_row = len(lst1)
lst2 = list(lst1)
for j in range(1,len_row):
my_dict[lst2[j]] = set([lst2[0]])
print(my_dict)
Это не работает ... это не решает проблему, заключающуюся в том, что, если ключ уже существует, актер должен быть объединен в набор с предыдущим актором.
Вместо этого я получаю:
'Trainwreck': {'Amy Shchumer'}, 'Inside Out': {'Bill Hader'}