Задача:
Необходимо написать клиент к API VK , который будет считать распределение возрастов друзей для указанного пользователя. То есть на вход подается username или user_id пользователя, на выходе получаем список пар (<возраст>, <количество друзей с таким возрастом>), отсортированный по убыванию по второму ключу (количество друзей) и по возрастанию по первому ключу (возраст). Например:
[(26, 8), (21, 6), (22, 6), (40, 2), (19, 1), (20, 1)]
Сделать нужно обязательно по этому шаблону (на входе в ф-ю юзер айди):
def calc_age(user_id): pass if __name__ == '__main__': res = calc_age('reigning') print(res)
def calc_age(user_id): api_url = 'https://api.vk.com/method/users.get?v=5.71&access_token=17da724517da724517da72458517b8abce117da17da72454d235c274f1a2be5f45ee711&user_ids=' user_name = input("Enter user ID or nickname: ") r = requests.get(api_url + user_name) user_id = r.text.split(':')[2] api_url = 'https://api.vk.com/method/friends.get?v=5.71&access_token=17da724517da724517da72458517b8abce117da17da72454d235c274f1a2be5f45ee711&user_id=' r = requests.get(api_url + user_id[:-13] + '&fields=bdate') data = r.json() friend_list = data ['response']['items'] birthday = friend_list['bdate'].split('.')
Python/Python_SF/Python_SF/InstallTest/FirstLesson.py”, line 18, in <module>birthday = friend_list.split('.')
TypeError: list indices must be integers or slices, not str
Все, ступор. Не понимаю, как вытащить bdate из list