def max_orientation(self, orientation_list): orientation_dict = dict() if orientation_list: for o in orientation_list: if orientation_dict.get(o, None) is None: orientation_dict[o] = 1 else: orientation_dict[o] += 1 orientation_dict_list = OHHOOperation.dict_sort_by_value(orientation_dict) if orientation_dict_list and len(orientation_dict_list) >= 2: if orientation_dict_list[0][1] == orientation_dict_list[1][1]: orientation_dict = dict() for o in orientation_list: if len(o) < 6: if orientation_dict.get(o, None) is None: orientation_dict[o] = 1 else: orientation_dict[o] += 1 else: first = o[:5] second = o[5:] if orientation_dict.get(first, None) is None: orientation_dict[first] = 1 else: orientation_dict[first] += 1 if orientation_dict.get(second, None) is None: orientation_dict[second] = 1 else: orientation_dict[second] += 1 orientation_dict_list = OHHOOperation.dict_sort_by_value(orientation_dict) if orientation_dict_list and len(orientation_dict_list) >= 2: if orientation_dict_list[0][1] == orientation_dict_list[1][1]: orientation_first = orientation_dict_list[0][0] orientation_second = orientation_dict_list[1][0] for o in orientation_list: if orientation_first in o: return orientation_first elif orientation_second in o: return orientation_second else: return orientation_dict_list[0][0] else: return None else: return orientation_dict_list[0][0] else: return None
def get_nearest_poi_name(response): pois = AMAP.get_pois(response) pois_dict = dict() for item in pois: pois_dict[item["name"]] = item["distance"] pois_dict_list = OHHOOperation.dict_sort_by_value(pois_dict, reverse=False) return pois_dict_list[0][0] if pois_dict_list else ""