def get_top_rated_exploration_summary_dicts(language_codes): """Returns a list of top rated explorations with the given language code. The return value is sorted in decreasing order of average rating. """ filtered_exp_summaries = [ exp_summary for exp_summary in exp_services.get_top_rated_exploration_summaries().values() if exp_summary.language_code in language_codes and sum(exp_summary.ratings.values()) > 0] sorted_exp_summaries = sorted( filtered_exp_summaries, key=lambda exp_summary: exp_summary.scaled_average_rating, reverse=True)[:feconf.NUMBER_OF_TOP_RATED_EXPLORATIONS] return get_displayable_exp_summary_dicts(sorted_exp_summaries)
def get_top_rated_exploration_summary_dicts(language_codes): """Returns a list of top rated explorations with the given language code. The return value is sorted in decreasing order of average rating. """ filtered_exp_summaries = [ exp_summary for exp_summary in exp_services.get_top_rated_exploration_summaries().values() if exp_summary.language_code in language_codes and sum(exp_summary.ratings.values()) > 0 ] sorted_exp_summaries = sorted( filtered_exp_summaries, key=lambda exp_summary: exp_summary.scaled_average_rating, reverse=True)[:feconf.NUMBER_OF_TOP_RATED_EXPLORATIONS] return get_displayable_exp_summary_dicts(sorted_exp_summaries)
def get_top_rated_exploration_summary_dicts(language_codes, limit): """Returns a list of top rated explorations with the given language codes. The return value is sorted in decreasing order of average rating. Args: language_codes: list(str). A list of language codes. Only explorations with these languages will be returned. limit: int. The maximum number of explorations to return. Returns: list(dict). Each dict in this list represents a exploration summary in human readable form. The list is sorted in decreasing order of average rating. For example: [ { 'category': u'A category', 'community_owned': False, 'id': 'eid2', 'language_code': 'en', 'num_views': 0, 'objective': u'An objective', 'status': 'public', 'tags': [], 'thumbnail_bg_color': '#a33f40', 'thumbnail_icon_url': self.get_static_asset_url( '/images/subjects/Lightbulb.svg'), 'title': u'Exploration 2 Albert title', }, ] """ filtered_exp_summaries = [ exp_summary for exp_summary in exp_services.get_top_rated_exploration_summaries( limit).values() if exp_summary.language_code in language_codes and sum(exp_summary.ratings.values()) > 0 ] sorted_exp_summaries = sorted( filtered_exp_summaries, key=lambda exp_summary: exp_summary.scaled_average_rating, reverse=True) return get_displayable_exp_summary_dicts(sorted_exp_summaries)
def get_top_rated_exploration_summary_dicts(language_codes, limit): """Returns a list of top rated explorations with the given language codes. The return value is sorted in decreasing order of average rating. Args: language_codes: list(str). A list of language codes. Only explorations with these languages will be returned. limit: int. The maximum number of explorations to return. Return: list(dict). Each dict in this list represents a exploration summary in human readable form. The list is sorted in decreasing order of average rating. For example: [ { 'category': u'A category', 'community_owned': False, 'id': 'eid2', 'language_code': 'en', 'num_views': 0, 'objective': u'An objective', 'status': 'public', 'tags': [], 'thumbnail_bg_color': '#a33f40', 'thumbnail_icon_url': self.get_static_asset_url( '/images/subjects/Lightbulb.svg'), 'title': u'Exploration 2 Albert title', }, ] """ filtered_exp_summaries = [ exp_summary for exp_summary in exp_services.get_top_rated_exploration_summaries(limit).values() if exp_summary.language_code in language_codes and sum(exp_summary.ratings.values()) > 0] sorted_exp_summaries = sorted( filtered_exp_summaries, key=lambda exp_summary: exp_summary.scaled_average_rating, reverse=True) return get_displayable_exp_summary_dicts(sorted_exp_summaries)