Simulative – Telegram
7.41K subscribers
1.69K photos
70 videos
1 file
1.25K links
Привет! Мы — образовательная платформа в сфере аналитики Simulative: simulative.ru

Создаём курсы-симуляторы, где обучаем не на «апельсинках», а на кейсах из реального бизнеса.

Наш уютный чат: @itresume_chat
Поддержка: @simulative_support
Download Telegram
​​💥 Большая подборка телеграмм-каналов для аналитиков

Мы отобрали для вас более 20 полезных каналов на любой вкус - анализ данных, программирование, data engineering, data science и многое другое 👍

Теперь вам точно будет, что почитать на предстоящих выходных 🙃
​​GROK IT!

Задача по Python: Что выведет код?

Правильный ответ раскроем завтра 😏

#grokit
👍1
Что выведет код?
Anonymous Quiz
14%
2
52%
1
17%
'b'
16%
Error
GROK IT!

Ответ на задачу про контейнер Counter из модуля collections 🔔

Ответ ищите в карточках 😉

Подробнее о модуле collections читайте 👉🏻 в наших карточках!

#grokit
​​💥 Какая Ваша любимая СУБД?

У каждого есть любимый язык программирования, любимая IDE и даже тема для нее.

А что насчет любимой СУБД? Кто Ваш фаворит для работы с Базами данных? 😏

P.S. Наверное, Вы уже догадались, что наша любимая СУБД - PostgreSQL! Только тссс!.., никому 😉
​​GROK IT!

Задача по Алгоритмам: Какова сложность вставки элементов в односвязный и двусвязный списки?

Правильный ответ раскроем завтра 😏

#grokit
Какова сложность вставки элементов в списки?
Anonymous Quiz
30%
О(1) и О(N)
18%
О(N) и О(1)
24%
О(1) и О(1)
27%
О(N) и О(N)
GROK IT!

Ответ на задачу про cложность вставки элементов в список 🔔

Ответ ищите в карточках 😉

Другие материалы про сложность алгоритмов:
- Поиск удаленного элемента за О(N)
- Cложение классов сложности двух алгоритмов
- Сложность алгоритмов: О, о, Ω, Θ
​​💥 Статические методы и декоратор @staticmethod в Python

Определяя методы внутри конкретного класса, мы как бы «привязываем» этот метод к экземплярам данного класса. Данная привязка осуществляется за счет первого аргумента - обычно это self.

Например, если в классе Dog описан метод bark(self), то вызов:

 dog = Dog()
dog.bark()

равносилен такой конструкции:

 dog = Dog()
Dog.bark(dog)

Так становится очевидным, какую роль выполняет аргумент self. Более подробно про это Вы можете прочитать 👉🏻 здесь.

Однако встает вопрос - что если мы хотим не привязывать метод к объекту класса? Например, внутри класса Owner есть метод cut(animal), который имитирует стрижку домашнего животного. Обратите внимание - хозяин может быть один, а вот животные могут быть разные. Что еще немаловажно - процесс стрижки никак не зависит от хозяина, а значит нет смысла привязывать метод cut(animal) к экземпляру класса Owner.

Другими словами, нам нужно создать метод cut(animal) внутри класса Owner, который ничего не знает ни про объект, ни про класс Owner. Это метод просто должен получать аргумент animal и возвращать какой-то результат.

В Python (в отличие от многих других языков программирования) есть несколько вариантов:

1. Просто вынести cut из класса и сделать отдельной функцией. В Java, например, так нельзя сделать, т.к. все должно быть распределено по классам. Python такие фривольности позволяет.

❗️Важно: Получается, что статический метод, объявленный в классе - это просто обычная функция по каким-либо архитектурным соображениям помещенная внутрь класса.

2. Воспользоваться декоратором @staticmethod. Указав этот декоратор перед объявлением метода в классе, Вы сможете вызывать его напрямую из класса, не создавая перед этим экземпляр.

Например:

 Owner.cut(animal = cat)

Раньше бы мы сделали так:

 owner = Owner()
owner.cut(animal = cat)

Стоит отметить, что последний вариант тоже сработает, но в нем уже нет необходимости - @staticmethod как раз и используется, чтобы избежать создание экземпляров класса.

👉🏻 Замечание: Обратите внимание, что частое использование статических методов может свидетельствовать о неправильной архитектуре Вашего кода. На практике не так часто реально возникает потребность использовать статические методы - зачастую это свидетельствует о недостаточном уровне абстракции в Ваших классах.
💥 6 популярных вопросов с собеседований

Вместе с нашим другом Ренатом, автором телеграм-канала Пристанище Дата Сайентиста, мы подготовили 6 частых вопросов с собеседований по Data Science и ответы на них.

Кстати, Ренат подготовил скидку 2 бакса на свой сборник Data Science Interview Guide по промокоду itresume 🔥

Получить сборник Вы можете 👉🏻 здесь. Там подробно разбирается более 70 вопросов - настоящее подспорье в подготовке к техническому интервью 😏

А чтобы еще и потренироваться на практике, попробуйте решить все наши задачки из рубрики GROK IT 😉