Как получить уникальные элементы списка, и создать подобную вложеность
Есть список с логами.
stream = [
'2019-01-01,login1,3',
'2019-01-07,login1,4',
'2019-03-29,login1,1',
'2019-04-04,login1,13',
'2019-01-05,login2,7',
'2019-06-14,login3,4',
'2019-07-02,login3,10',
'2019-03-21,login4,19',
'2019-03-22,login4,4',
'2019-04-22,login4,8',
'2019-05-03,login4,9',
'2019-05-11,login4,11',
]
Задача на выходе получить такую структуру, с уникальным логином и со списком всех просмотров.
user = [
['login1', [3, 4, 1, 13]],
['login2', [7]],
['login3', [4, 10]],
['login4', [19, 4, 8, 9,11]]
]
Я застрял на этом этапе.
logs = []
for i in stream:
logs.append(i.split(","))
users = []
for i in logs:
data, user, view = i
if user not in users:
users.append(user)
Ответы (1 шт):
Автор решения: Sergey
→ Ссылка
Как-то так:
stream = [
'2019-01-01,login1,3',
'2019-01-07,login1,4',
'2019-03-29,login1,1',
'2019-04-04,login1,13',
'2019-01-05,login2,7',
'2019-06-14,login3,4',
'2019-07-02,login3,10',
'2019-03-21,login4,19',
'2019-03-22,login4,4',
'2019-04-22,login4,8',
'2019-05-03,login4,9',
'2019-05-11,login4,11',
]
result = {}
for i in stream:
data, user, view = i.split(",")
wrk = result.setdefault(user, [])
wrk.append(view)
result[user] = wrk
print(result)