def loadMovieLens(path='/data/movielens'):
movies={}
for line in open(path+'/movie.dat',encoding='utf-8')
(id,title)=line.split('|')[0:2]
movies[id]=title
prefs={}
for line in open(path+'/ratings.dat'.encoding='utf-8')
(user,movieidm,rating,ts)=line.split('\t')
prefs.setdefault(user,{})
prefs[user][movies[movieid]]=float(rating)
return prefs
这个出现了好多错误,
第一个错误是tab键与空格的错误:IndentationError: unindent does not match any outer indentation level,解决方法,打开代码python自带编辑IDE,选择全部代码,选择format >>untabify Region>>4,意思是将tab都转化为4字节的空格
第二个错误:
多于一个参数错误,明明我输入的是两个参数,为啥会出这个错误,百思不得姐,后来认真看了一下数据源的结果,只抄书,书上的数据和我的数据结果不一致,它是以|和/t作为分割符,下的数据dat文件是以::为分割符,顾没有分割对文件