def generate_recommendations_for_one_user(user_download_history, recommendations, one_user_id): all_app_id = recommendations.keys() recommended_app_list = [] sim_score = [] for app in user_download_history[ one_user_id ]: if app in all_app_id: for one_sim_app in recommendations[app]: recommended_app_list.append(one_sim_app[0]) sim_score.append(one_sim_app[1]) sorted_list = [x for (y,x) in sorted(zip(sim_score, recommended_app_list), key=lambda pair: pair[0], reverse = True)] DataService.update_user_download_history({'user_id':one_user_id}, {'$set':{"recommended_apps":sorted_list}}) return