Forwarded from Представляешь,
ну вот и дошутились, сеньоры, берегитесь
Питонисты, тут у вас конкурент растет (буквально). На YouTube нашли канал с уроками по Python, который ведет семилетний Сережа. Малой выкладывает видео уже чуть больше года. Если искали, как писать нейросетки, то вам, судя по всему, туда.
Ждем, когда Сережу захантят в какой-нибудь финтех.
@your_tech
Питонисты, тут у вас конкурент растет (буквально). На YouTube нашли канал с уроками по Python, который ведет семилетний Сережа. Малой выкладывает видео уже чуть больше года. Если искали, как писать нейросетки, то вам, судя по всему, туда.
Ждем, когда Сережу захантят в какой-нибудь финтех.
@your_tech
Что позволяет перегрузка операторов?
Anonymous Quiz
14%
Классы могут участвовать в операции сложения
18%
Классы могут получать методы со зарезервированными словами вроде is, not и проч.
67%
Все вышеперечисленное
Простыми словами о сложном: Перегрузка операторов в Python
В действительности термин означает всего лишь перехватывание встроенных операций с помощью классов. Вот краткий обзор ключевых идей в основе механизма перегрузки:
- Перегрузка позволяет классам участвовать в обычных операциях.
- Классы могут перегружать все операторы выражений.
- Классы могут также перегружать такие операции, как вывод, вызов функций, обращение к атрибутам и так далее.
- Перегрузка делает экземпляры классов более похожими на встроенные типы.
- Перегрузка заключается в реализации в классах методов со специальными именами.
Давайте рассмотрим пример.
Класс
Вот 10 самых частоиспользуемых "магических" методов, которые перегружают:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
p.s. По опыту админа, перегрузка запоминается легче, если акцентировать внимание на операторах, запомнить хорошенько, что под ними имеется в виду. Вот полный список операторов, чтобы вы их отличали от других объектов языка.
В действительности термин означает всего лишь перехватывание встроенных операций с помощью классов. Вот краткий обзор ключевых идей в основе механизма перегрузки:
- Перегрузка позволяет классам участвовать в обычных операциях.
- Классы могут перегружать все операторы выражений.
- Классы могут также перегружать такие операции, как вывод, вызов функций, обращение к атрибутам и так далее.
- Перегрузка делает экземпляры классов более похожими на встроенные типы.
- Перегрузка заключается в реализации в классах методов со специальными именами.
Давайте рассмотрим пример.
class Vector2D:
def __init__(self, x, y):
self.x = x
self.y = y
def __add__(self, other):
return Vector2D(self.x + other.x, self.y + other.y)
def __repr__(self):
return f"Vector2D({self.x}, {self.y})"
# Пример использования
x = Vector2D(3, 4)
y = Vector2D(5, 6)
result = x + y
print(result) # Вывод: Vector2D(8, 10)
Класс
Vector2D
определяет 2D-вектор с координатами x
и y
. Метод __add__
перегружает оператор +
, чтобы складывать координаты двух векторов. Метод __repr__
определяет, как объект будет представлен, чтобы было удобно его видеть при выводе. В итоге, мы теперь умеем складывать вектора, как на уроках школьной алгебры, простым знаком плюса.Вот 10 самых частоиспользуемых "магических" методов, которые перегружают:
1.
__init__
: Вызывается при создании нового объекта, используется для инициализации атрибутов объекта.2.
__str__
: Определяет строковое представление объекта, используется функцией str()
и при выводе через print()
.3.
__repr__
: Определяет, как будет выводится итоговый объект. 4.
__add__
: Перегружает оператор +
, используется для определения поведения сложения объектов.5.
__sub__
: Перегружает оператор -
, используется для определения поведения вычитания объектов.6.
__mul__
: Перегружает оператор *
, используется для определения поведения умножения объектов.7.
__truediv__
: Перегружает оператор /
, используется для определения поведения деления объектов.8.
__getitem__
: Перегружает оператор []
, используется для доступа к элементам объекта, как в списках или словарях.9.
__setitem__
: Перегружает оператор []
, используется для задания значений элементам объекта.10.
__len__
: Возвращает длину объекта, используется функцией len()
.p.s. По опыту админа, перегрузка запоминается легче, если акцентировать внимание на операторах, запомнить хорошенько, что под ними имеется в виду. Вот полный список операторов, чтобы вы их отличали от других объектов языка.
Telegram
Python: задачки и вопросы
Марк Лутц, «Изучаем Python»: полный список операторов
Forwarded from Сохранёнки программиста
Большая шпаргалка по Linux
"Познав команды, познаешь саму систему. Настоящий юзер не запоминает всё — он просто знает, где найти."
— Лин Уксоид
"Познав команды, познаешь саму систему. Настоящий юзер не запоминает всё — он просто знает, где найти."
— Лин Уксоид
This media is not supported in your browser
VIEW IN TELEGRAM
PhySO | DL-регрессия для подбора функции
Модуль использует глубокое обучение с подкреплением для подбора наиболее подходящей функции, описывающей данные.
Цена: бесплатно
Репозиторий проекта
@zen_of_python
Модуль использует глубокое обучение с подкреплением для подбора наиболее подходящей функции, описывающей данные.
Цена: бесплатно
Репозиторий проекта
@zen_of_python
featuretools | Автоматизируем поиск фичей
Инструмент позволяет автоматически выделять новые признаки из вашего табличного датасета с помощью Машинного обучения. Справляется с преобразованием из одного типа данных в другой (например, из временных рядов о покупках в матрицу признаков о конкретном покупателе).
Цена: бесплатно
Репозиторий проекта
Демо
А вы пользуетесь вспомогательными инструментами при генерации признаков? Поделитесь в комментариях.
#инструмент
@zen_of_python
Инструмент позволяет автоматически выделять новые признаки из вашего табличного датасета с помощью Машинного обучения. Справляется с преобразованием из одного типа данных в другой (например, из временных рядов о покупках в матрицу признаков о конкретном покупателе).
Цена: бесплатно
Репозиторий проекта
Демо
А вы пользуетесь вспомогательными инструментами при генерации признаков? Поделитесь в комментариях.
#инструмент
@zen_of_python
This media is not supported in your browser
VIEW IN TELEGRAM
prefect.io | Airflow для ML
Адаптированный под Машинное обучение оркестатор, что облегчит вашему проекту MLOps. Обладает аналогичными фичами вроде Cron-based планирования и повторных попыток, однако предлагает безсерверную инфраструктуру и облачный UI.
Есть условно бесплатный тариф.
Prefect vs. Airflow
Репозиторий проекта с 17К+ звезд на GitHub
Case study: обмен данными между процессами
✍️ - что такое Airflow?
🗿 - мне хватает Airflow
Адаптированный под Машинное обучение оркестатор, что облегчит вашему проекту MLOps. Обладает аналогичными фичами вроде Cron-based планирования и повторных попыток, однако предлагает безсерверную инфраструктуру и облачный UI.
Есть условно бесплатный тариф.
Prefect vs. Airflow
Репозиторий проекта с 17К+ звезд на GitHub
Case study: обмен данными между процессами
✍️ - что такое Airflow?
🗿 - мне хватает Airflow
Говорят, Senior Python Devs размножаются, откладывая яйца, но наличие сей способности не приближает Собчак к этой позиции.
#кек
@zen_of_python
#кек
@zen_of_python
dataherald | Из естественного языка в SQL-запрос
Целое API, которое позволит общаться с вашей базой данных в режиме диалога на базе ChatGPT, потому на русском языке тоже. Есть веб-интерфейс. Поднимается из контейнера Docker.
Пусть ваш дата-аналитик понервничает.
Цена: бесплатно (взимают только за токены)
Репозиторий проекта c 3,5K звезд
@zen_of_python
Целое API, которое позволит общаться с вашей базой данных в режиме диалога на базе ChatGPT, потому на русском языке тоже. Есть веб-интерфейс. Поднимается из контейнера Docker.
Пусть ваш дата-аналитик понервничает.
Цена: бесплатно (взимают только за токены)
Репозиторий проекта c 3,5K звезд
@zen_of_python
quickref.me.pdf
1.8 MB
Очень удобная шпаргалка про Python
Выверенное представление различных терминов языка на quickref.me. Здесь и про типы данных, и про модули, и про классы с наследованием.
#основы
@zen_of_python
Выверенное представление различных терминов языка на quickref.me. Здесь и про типы данных, и про модули, и про классы с наследованием.
#основы
@zen_of_python