最近学习python中,遇到了一个案例:
已知若干用户名字及其喜欢的电影清单,现有某用户已看过并喜欢一些电影,然后根据已有数据,查找与该用户爱好最相似的用户,也就是看过并喜欢的电影与该用户最接近的用户,然后从那个用户喜欢的电影中选取一个当前用户还没看过的电影,然后推荐。
示例代码如下:
from random import randrange
data = {
'user'+str(i):{
'film'+str(randrange(1,10)) for j in range(randrange(15))} for i in range (10)}
user = {
'film1','film2','film3'}
similarUser, films = max(data.items(), key=lambda item: len(item[1]&user))
print('历史数据·:')
for u, f in data.items(