Найти в Дзене
106 подписчиков

Вы когда-нибудь использовали статические методы в #Python? Посмотрите пример библиотеки requests ниже.


`_get_idna_encoded_host` в `PreparedRequest` - это статический метод.

Он кодирует имена хостов URL, что связано с функциональностью класса, но не зависит от данных экземпляра/класса.

Зачем нужны статические методы?

- Инкапсулируют специфические функции
- Часть API класса (видна через встроенную функцию `dir()`)
- Можно поддерживать чистоту пространства имен

Но помните:

- Отдельные функции предлагают больше возможностей для повторного использования
- Остерегайтесь поползновений в область видимости при проектировании класса

Вы когда-нибудь использовали статические методы в #Python? Посмотрите пример библиотеки requests ниже.  `_get_idna_encoded_host` в `PreparedRequest` - это статический метод.
Около минуты