Python RU
Фотография
нажмите — покажем
нажмите — покажем
Вы когда-нибудь использовали статические методы в #Python? Посмотрите пример библиотеки requests ниже.
`_get_idna_encoded_host` в `PreparedRequest` - это статический метод.
Он кодирует имена хостов URL, что связано с функциональностью класса, но не зависит от данных экземпляра/класса.
Зачем нужны статические методы?
- Инкапсулируют специфические функции
- Часть API класса (видна через встроенную функцию `dir()`)
- Можно поддерживать чистоту пространства имен
Но помните:
- Отдельные функции предлагают больше возможностей для повторного использования
- Остерегайтесь поползновений в область видимости при проектировании класса
@pro_python_code
👍5🔥4❤3
13 · 4.6K ·