Задать вопрос

Как расширить чужую python-библиотеку?

Нубский и сумбурный вопрос.
У меня есть библиотека, которая делает запрос к API, используется она вот так:
LOGIN = "user"
PASSWORD = "pass"
API_URL = "http://..."

api = library.Api(API_URL, LOGIN, PASSWORD)
#api.get(something)

Я хочу эту библиотеку расширить: написать функцию get_something_specific, которая делает что-то на основе api.get.
Чтобы она использовалась как-то так:
#...
api = library.Api(API_URL, LOGIN, PASSWORD)
api.get_something_specific()

Как это сделать, не меняя файлы самой библиотеки?

ps/ Гугл не помог, потому что не знаю, что именно искать.
  • Вопрос задан
  • 178 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Создать класс, наследующийся от library.Api. Либо реализовать нужную логику в виде отдельной функции, а не метода:
#...
api = library.Api(API_URL, LOGIN, PASSWORD)
get_something_specific(api)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Можно использовать манки патч.
Грубый пример:
def get_something_specific(self, *args):
    pass

api.get_something_specific = get_something_specific
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы