TypeError: user_followers () принимает ровно 3 аргумента (2 данных)

daniel_e спросил: 10 мая 2018 в 04:06 в: python

Я получаю эту ошибку:

TypeError: user_followers() takes exactly 3 arguments (2 given)

в моем скрипте python, запуская эти строки кода:

origin = api.username_info('edelfilm')
user_id = origin['user']['pk']
followers = []
results = api.user_followers(user_id)

Функция определена в другом скрипте следующим образом:

    def user_followers(self, user_id, rank_token, **kwargs):
        """
        Get user followers        :param user_id:
        :param rank_token: Required for paging through a single feed and can be generated with
            :meth:`generate_uuid`. You should use the same rank_token for paging through a single user followers.
        :param kwargs:
            - **query**: Search within the user followers
            - **max_id**: For pagination
        :return:
        """
        raise_if_invalid_rank_token(rank_token)        endpoint = 'friendships/{user_id!s}/followers/'.format(**{'user_id': user_id})
        query_params = {
            'rank_token': rank_token,
        }
        query_params.update(kwargs)
        res = self._call_api(endpoint, query=query_params)
        if self.auto_patch:
            [ClientCompatPatch.list_user(u, drop_incompat_keys=self.drop_incompat_keys)
             for u in res.get('users', [])]
        return res

Что я делаю неправильно?

1 ответ

pranshu vinayak ответил: 10 мая 2018 в 10:04

Сначала Определите переменную rank_token в своем коде

origin = api.username_info('edelfilm')
user_id = origin['user']['pk']
rank_token = 1 #Assuming it takes an integer value
followers = []

, а затем передайте ее в качестве третьего параметра в свой метод

results = api.user_followers(user_id, rank_token)