'''
Created?on?2014-3-11
@author:?NeoWu
'''
def?load_data():?
#指定文件name
filename_user_movie?='ratings_data.txt'?
#申明user_movie,為字典?
user_movie?=?{}?
#按行處理ratings_data.txt這個文件
for?line?in?open(filename_user_movie):?
#從每行中的內容取三個值userId,?itemId,?rating,strip()為祛除字符串兩頭的空格,split()為以空格來分割字符串
(userId,?itemId,?rating)?=?line.strip().split()?
#將userId的值申明為字典
user_movie.setdefault(userId,{})?
#給字典賦值
user_movie[userId][itemId]?=?float(rating)?
return?user_movie
print?load_data()
運行結果如下:
{'0004': {'03': 212323.323}, '0001': {'01': 232323.293}, '0002': {'02': 2378323.243}, '0003': {'01': 234523.2623}}
妳運行會出錯,應該是妳的txt內容不對,其格式應該要類似於這樣
0001 ?01 ? 232323.293
0002 ?02 ? 2378323.243
0003 ?01 ? 234523.2623
0004 ?03 ? 212323.323