uk
Feedback
Pythoner

Pythoner

Відкрити в Telegram

Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode

Показати більше
6 622
Підписники
-324 години
-57 днів
-3030 день
Архів дописів
Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля Дизайнер карточек для маркетплейсов — востребованная и доходная проф
Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля Дизайнер карточек для маркетплейсов — востребованная и доходная профессия 💰 Научись ей бесплатно! - Бесплатный доступ - Разбор ДЗ от наставника - Мощные кейсы в портфолио Узнать больше #реклама 16+ yudaevschool24.online О рекламодателе

✈️Сегодня поговорим о настоящей магии в мире Python – метапрограммировании и динамическом создании функций. ➡️Начнем с просто
✈️Сегодня поговорим о настоящей магии в мире Python – метапрограммировании и динамическом создании функций. ➡️Начнем с простого примера. Помните eval() и exec()? Это базовые инструменты метапрограммирования, но использовать их нужно с осторожностью – как острый нож в руках повара. Гораздо интереснее копнуть глубже!
def create_power_function(power):
    def power_func(x):
        return x ** power
    return power_func

# Создаём функции на лету
square = create_power_function(2)
cube = create_power_function(3)
⬆️Но это только верхушка айсберга! Настоящее веселье начинается, когда мы подключаем модуль types и функцию exec с собственным словарем namespace. Это как собирать конструктор, только вместо деталей – части функции. 🔎А вы знали, что можно создавать функции с динамическим количеством аргументов? Или генерировать методы классов на лету? Это как будто у вас есть 3D-принтер для кода!
import types

def create_dynamic_function(func_name, args, body):
    namespace = {}
    func_code = f"def {func_name}({', '.join(args)}):\n{body}"
    exec(func_code, globals(), namespace)
    return namespace[func_name]

# Магия в действии
greet = create_dynamic_function(
    "greet",
    ["name"],
    "    return f'Привет, {name}!'"
)
➡️Но помните – с большой силой приходит большая ответственность! Метапрограммирование может сделать код сложным для понимания. Используйте его мудро, когда выгода очевидна: —При создании API с повторяющимися паттернами —Для автоматизации рутинных задач —При разработке фреймворков и библиотек ➡️Отдельного внимания заслуживают декораторы – это ведь тоже метапрограммирование! Они как умные обёртки для функций, которые могут изменять их поведение. И да, их тоже можно создавать динамически! 🐍Pythoner

Автоматизация работы с самозанятыми Мы помогаем сотням компаний уйти от рутины и выстроить быстрые, удобные и безрисковые отн
Автоматизация работы с самозанятыми Мы помогаем сотням компаний уйти от рутины и выстроить быстрые, удобные и безрисковые отношения с исполнителями. - юридическая поддержка онлайн - автоматический сбор всех закрывающих - онбординг исполнителей сократится до 20 минут - моментальные выплаты на карту или р/с - подключение платформы за 1 день ⚡Проведем демонстрацию бесплатно!⚡ Узнать больше #реклама 16+ konsol.pro О рекламодателе

✈️Оператор pass в Python, возможно, является одним из наиболее непонятных для новичков. Этот оператор не делает абсолютно нич
✈️Оператор pass в Python, возможно, является одним из наиболее непонятных для новичков. Этот оператор не делает абсолютно ничего. Но почему же он тогда нужен? ➡️Плейсхолдер для будущего кода Во время разработки программы, вы можете встретить ситуации, когда вам нужно оставить пустое место для будущего кода. Вместо того чтобы оставлять комментарии, вы можете использовать оператор pass, чтобы указать на то, что здесь будет код. Это позволяет сохранить структуру программы и избежать ошибок синтаксиса. ➡️Минимальные классы и функции Оператор pass может быть полезен при создании минимальных классов или функций. В Python, класс или функция не может быть пустой. Если вы попытаетесь создать пустой класс или функцию, интерпретатор вернет ошибку. Оператор pass позволяет обойти это ограничение. ➡️Управление потоком программы Оператор pass также может быть использован для управления потоком программы. Иногда в условной конструкции if/elif/else или в цикле for/while может не быть необходимости выполнять какое-либо действие. В этих случаях можно использовать оператор pass для обозначения пустого блока. 🐍Pythoner

Мастер-класс по Python для школьников. Бесплатно! Онлайн-урок от ведущего ИТ ВУЗа страны - Университета Иннополис для ученико
Мастер-класс по Python для школьников. Бесплатно! Онлайн-урок от ведущего ИТ ВУЗа страны - Университета Иннополис для учеников 6-11 классов. 👍Бесплатно! ✅Познакомим с профессией тестировщика. ✅Научим проверять программы, находить баги. ✅На практике отработаем использование инструментов и методов тестирования. ⚡Ваш ребёнок за один час создаст автоматический тест на языке программирования Python и сможет использовать полученные знания в дальнейшем! Для участия важно знание основ программирования на Python. Помогите ребёнку освоить востребованную профессию. Регистрируйтесь! Зарегистрироваться #реклама 16+ progmatica.innopolis.university О рекламодателе

Repost from It-donor channel
Регистрируйтесь и участвуйте в неделе IT-донора С 2 по 7 декабря пройдет девятая неделя IT-донор. В прошлую акцию: ❤️ Зарегис
Регистрируйтесь и участвуйте в неделе IT-донора С 2 по 7 декабря пройдет девятая неделя IT-донор. В прошлую акцию: ❤️ Зарегистрировалось более 2600 добровольцев из 200 городов России; ❤️ Сдали почти 500 литров крови, которые помогли спасти жизни людей со всей России. И это не предел — ведь скоро стартует декабрьская акция IT-донор. Как поучаствовать в проекте? 👆 Регистрируйтесь через чат-бот IT-донора до 7 декабря включительно; ✌️ Приходите с 2 по 7 декабря сдавать кровь на станцию переливания в вашем городе. Найти ближайшую к вам станцию можно здесь. Подробнее о неделе добра и о правилах участия в акции читайте на сайте. А если у вас ещё остались вопросы, задавайте их в чате сообщества доноров из IT.

Подводим итоги года с лидерами Platform V Pangolin 17 декабря в 11:00 по мск СберТех приглашает на предновогодний ламповый он
Подводим итоги года с лидерами Platform V Pangolin 17 декабря в 11:00 по мск СберТех приглашает на предновогодний ламповый онлайн-митап с лидерами СУБД Platform V Pangolin. Pangolin – российская СУБД для высоконагруженных систем, целевая СУБД в Сбере и других крупных компаниях. О чем расскажут: - Самые крупные обновления в продукте. - Как команда продукта переоформила сертификат ФСТЭК России по 4 уровню доверия. - Обновления Platform V Kintsugi – графической консоли для управления, мониторинга и диагностики СУБД. - Старт разработки инструмента для резервного копирования и восстановления данных. - И это далеко не все Вы сможете задать свои вопросы о продуктах и оставить заявку на получение тестового дистрибутива. Ждем встречи! Зарегистрироваться #реклама 16+ platformv.sbertech.ru О рекламодателе

✈️Конструкция if __name__ == '__main__' используется для того, чтобы определить, запущен ли файл модуля напрямую или импортир
✈️Конструкция if __name__ == '__main__' используется для того, чтобы определить, запущен ли файл модуля напрямую или импортирован из другого модуля. ➡️Простой пример:
def main():

# Точка входа в программу 
if __name__ == '__main__':
    main()
➡️Эта конструкция позволяет запустить какой-нибудь код только при прямом вызове модуля, так как name будет равно 'main' только если модуль запущен напрямую. ➡️Это позволяет запускать программу полностью только когда она основная, а не импортируется в качестве модуля. 🐍Pythoner

✈️Сегодня поговорим о крутой фиче Python, которая может значительно сократить потребление памяти вашими объектами. Речь пойдё
✈️Сегодня поговорим о крутой фиче Python, которая может значительно сократить потребление памяти вашими объектами. Речь пойдёт об атрибуте slots! ➡️Для начала давайте разберемся, почему вообще возникла необходимость в slots. По умолчанию Python хранит атрибуты объектов в специальном словаре dict. Это удобно и гибко – можно добавлять новые атрибуты на лету. Но у такой роскоши есть цена: дополнительные накладные расходы на память. 🔎Представьте, что у вас миллион объектов класса User с парой атрибутов. Каждый такой объект тащит за собой словарь dict, а это прожорливая структура данных. И тут на сцену выходит наш герой – slots!
# Без slots
class User:
    def __init__(self, name, age):
        self.name = name
        self.age = age

# Со slots
class OptimizedUser:
    __slots__ = ['name', 'age']
    
    def __init__(self, name, age):
        self.name = name
        self.age = age
➡️Что даёт нам slots? Вместо создания словаря Python выделяет фиксированный массив в памяти под указанные атрибуты. Это как переход от просторного лофта к компактной студии – места меньше, зато экономия налицо! ➡️Реальные цифры? На практике использование slots может сократить потребление памяти на 30-50% для простых объектов. А при работе с миллионами инстансов экономия становится более чем существенной. ➡️Где это реально пригодится: —В больших датасетах, где у вас тысячи/миллионы однотипных объектов —В микросервисах, где важна оптимизация памяти —В системах реального времени, где каждый байт на счету —В долгоживущих процессах, обрабатывающих потоки данных ➡️Подводные камни: —Нельзя добавлять новые атрибуты после определения класса —Наследование работает не так прозрачно, как с обычными классами —Некоторые метаклассы могут конфликтовать со slots ➡️Пример реального применения:
class DataPoint:
    __slots__ = ['timestamp', 'value', 'sensor_id']
    
    def __init__(self, timestamp, value, sensor_id):
        self.timestamp = timestamp
        self.value = value
        self.sensor_id = sensor_id

# Представьте, что таких объектов у вас миллионы
data_points = [DataPoint(time.time(), random.random(), i) for i in range(1_000_000)]
🔎Про что стоит помнить: slots – это не волшебная таблетка. Используйте его там, где действительно важна оптимизация памяти и где вы уверены в неизменном наборе атрибутов. 🐍Pythoner

🐍Хотите освоить Python и работать в IT? На курсе Python Developer. Basic вы изучите один из самых востребованных языков прог
🐍Хотите освоить Python и работать в IT? На курсе Python Developer. Basic вы изучите один из самых востребованных языков программирования с нуля! 🚪Python открывает двери в мир веб-разработки, машинного обучения, data science и создания приложений. Наш курс подготовит вас к позиции junior-разработчика, а практические занятия с FastAPI и Django позволят создавать реальные проекты уже в процессе обучения. 🧹Вы научитесь писать чистый и понятный код, работать с базами данных и инструментами DevOps. Умения, которые высоко ценятся ведущими компаниями, теперь в вашем портфолио! 😎Успейте записаться на курс и получите скидку до 15%! Начните карьеру в IT и станьте частью команды разработчиков с уверенными навыками на Python. #реклама О рекламодателе

✈️Конструкция raise используется для генерации исключений. Когда в коде происходит что-то непредвиденное или некорректное — м
✈️Конструкция raise используется для генерации исключений. Когда в коде происходит что-то непредвиденное или некорректное — можно сгенерировать исключение командой raise. ➡️Основные моменты конструкции raise: —Возбуждение существующих исключений: Вы можете использовать raise без каких-либо параметров в блоке except, чтобы повторно вызвать текущее исключение. —Создание собственных исключений: Вы можете создать или вызвать собственное исключение, создав объект исключения и передав его в raise. ➡️Пример использования raise:
def divide(a, b):
    if b == 0:
        raise ValueError("Деление на ноль невозможно.")
    return a / b

try:
    result = divide(10, 0)
except ValueError as e:
    print(f"Ошибка: {e}")
⬆️В этом примере функция divide вызывает исключение ValueError, если второй аргумент равен нулю. В блоке try мы пытаемся выполнить деление, и если возникает ошибка, мы перехватываем её и выводим сообщение об ошибке. 🐍Pythoner

🐍 Начните программировать на Python - бесплатно! Курс по основам Python с наставником — напишете первый мини пет-проект в по
🐍 Начните программировать на Python - бесплатно! Курс по основам Python с наставником — напишете первый мини пет-проект в портфолио за 14 дней. 🔹 72 урока в онлайн-тренажере. 🔹 4 живых вебинара. 🔹 Закрытый telegram-чат для поддержки 24/7. 🔹 Полезные материалы с собой. А главное при поддержке наставника: попробуйте быстро, просто и без ошибок.  📍Старт курса: уже 3 декабря!

✈️Whylogs - это библиотека для логирования и анализа данных в Python. Она предназначена для легкого отслеживания метрик данны
✈️Whylogs - это библиотека для логирования и анализа данных в Python. Она предназначена для легкого отслеживания метрик данных, которые могут помочь в мониторинге и улучшении производительности моделей машинного обучения. Почему это важно? Потому что понимание ваших данных и способов их изменений со временем может существенно повлиять на качество моделей. ➡️Основные функции Whylogs: —Автоматическое извлечение метрик: Библиотека собирает метрики, такие как распределения, статистики и т.д. —Поддержка различных форматов данных: Логирование можно выполнять для различных источников данных, включая Pandas DataFrames и потоковые данные. —Интеграция с другими инструментами: Whylogs легко интегрируется с другими библиотеками и фреймворками. ➡️Пример использования Whylogs:
import whylogs as why
import pandas as pd

# Создание примера данных
data = {
    "age": [25, 30, 35, 40, 45],
    "income": [50000, 60000, 70000, 80000, 90000]
}
df = pd.DataFrame(data)

# Инициализация логгера
logger = why.logger()

# Логируем данные
logger.log_dataframe(df)

# Генерируем отчет
report = logger.report()

# Сохраняем отчет
report.save("report.whylog")

# Выводим на экран
print(report)
⬆️В этом примере мы создаем DataFrame с двумя колонками: age и income. Затем мы инициализируем Whylogs логгер, логируем наш DataFrame, генерируем и сохраняем отчет. 👀Whylogs предоставляет мощные инструменты для отслеживания и анализа данных, улучшая тем самым процесс разработки, валидации и мониторинга моделей машинного обучения. 🐍Pythoner

Хочешь освоить Python, но не знаешь где брать материалы? 🐍 Ghostly Python — уютное место для изучения Python на практике. Та
Хочешь освоить Python, но не знаешь где брать материалы? 🐍 Ghostly Python — уютное место для изучения Python на практике. Там вы найдёте уроки, скрипты, шпаргалки, и многое другое, что поможет вам стать уверенным разработчиком. Неважно, новичок вы или опытный программист, — у нас всегда найдётся что-то полезное! 🔥 Заходи прямо сейчас, чтобы не потерять — Ghostly Python!

Больше AI-сценариев и кое-что совсем неожиданное! 📱Битрикс24 Коллабы – инструмент, который встормошит ваши рабочие чатики! П
Больше AI-сценариев и кое-что совсем неожиданное! 📱Битрикс24 Коллабы – инструмент, который встормошит ваши рабочие чатики! Пространство для совместной работы с внешними командами. Это как если телегу набить задачами, планировщиком встреч, добавить AI и обезопасить от лишних глаз. Кроме того: - Работайте над идеями и стратегиями в Досках - Максимально загружайте ресурсы с Онлайн-записью - С AI анализируйте скрипты и звонки менеджеров - Создайте сайт с AI по короткому запросу - Объединяйтесь на видеозвонках до 1000 человек Новинки постепенно будут появляться внутри сервиса. Потестить многие, включая Битрикс24 Коллабы, можно уже сейчас и бесплатно. Узнать больше #реклама 16+ gravitation.bitrix24.ru О рекламодателе

🦆Duck typing — это концепция, позволяющая использовать объекты независимо от их типа, базируясь на их свойствах и методах. О
🦆Duck typing — это концепция, позволяющая использовать объекты независимо от их типа, базируясь на их свойствах и методах. Основная идея — не проверять тип объекта напрямую, а пытаться использовать его так, как нам нужно. 👀Преимущества: —Нет необходимости привязываться к конкретным классам и типам. —Код становится более гибким и менее связанным. —Легче расширять и изменять код, добавляя новые типы. —Упрощает полиморфизм. ➡️Пример кода:
class Bird:
    def fly(self):
        return "I can fly!"

class Duck(Bird):
    def quack(self):
        return "Quack!"

class Airplane:
    def fly(self):
        return "I can also fly!"

def make_it_fly(flyable_thing):
    print(flyable_thing.fly())

# Создаем объекты
duck = Duck()
airplane = Airplane()

# Используем их, не смотря на разные типы
make_it_fly(duck)      # Выведет: I can fly!
make_it_fly(airplane)  # Выведет: I can also fly!
⬆️В этом примере функция make_it_fly принимает любой объект, который имеет метод fly(). Если объект соответствует этому интерфейсу, он будет выполнен, независимо от того, является ли объект уткой, самолетом или чем-то еще. 🔎Duck typing позволяет создавать более гибкий и динамичный код, так как вы можете использовать объекты, которые соответствуют необходимым интерфейсам, не заботясь о их конкретных классах. 🐍Pythoner

Погрузитесь в мир Python с нашим бесплатным курсом! 🎓 Включено 45 уроков, 56 упражнений в тренажере и 163 проверочных теста.
Погрузитесь в мир Python с нашим бесплатным курсом! 🎓 Включено 45 уроков, 56 упражнений в тренажере и 163 проверочных теста. Узнаете, как создавать программы, работать с условиями и функциями. Что вы освоите: — Составление программ из нескольких модулей. — Анализ ошибок в коде с использованием отладочной печати. 📚 Курс охватывает основы Python: синтаксис, условия, циклы, типы данных и библиотеки. Практика на каждом шаге поможет вам уверенно использовать язык. Начните свое обучение с бесплатного базового курса Python и вы сможете создавать несложные программы, а так же анализировать ошибки в коде!

Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как
Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как привлечь целевую аудиторию 💰👌 Попробовать #реклама yandex.ru О рекламодателе

✈️Serverless архитектура — это модель вычислений в облаке, где разработчики пишут код, а провайдер облачных услуг управляет с
✈️Serverless архитектура — это модель вычислений в облаке, где разработчики пишут код, а провайдер облачных услуг управляет серверами. Это позволяет сосредоточиться на разработке, не думая о серверной инфраструктуре. 👀Преимущества Serverless Архитектуры: - Снижение затрат: Платите только за фактическое использование ресурсов, что часто приводит к экономии средств. - Масштабируемость: Автоматическое масштабирование помогает справляться с любыми нагрузками без необходимости в ручном управлении. - Упрощение DevOps: Нет необходимости управлять серверами и их конфигурацией. ⭐️Недостатки Serverless Архитектуры: - Холодный старт: Время, необходимое для инициализации функции, может быть значительным и влиять на производительность. - Ограничения исполнения: Функции могут иметь ограничения по времени выполнения и памяти, что может быть проблематично для более сложных задач. - Зависимость от провайдера: Использование специфичных для провайдера технологий может привести к привязке к одному облаку. ➡️Заключение Serverless архитектура предоставляет мощный инструмент для современных разработчиков, предлагая значительную экономию времени и ресурсов. Однако, важно учитывать её ограничения при выборе данной модели для своего проекта. 🐍Pythoner

Изучили основы Python, знаете библиотеки и даже создавали небольшие проекты? Но что если проекты вдруг начинают «ломаться» из
Изучили основы Python, знаете библиотеки и даже создавали небольшие проекты? Но что если проекты вдруг начинают «ломаться» из-за зависимости от других пакетов?😩 Управление окружением — это головоломка для многих разработчиков-новичков. Представьте, что ваш проект работает без сбоев, библиотеки и зависимости легко настраиваются, а код стабильно запускается на любой машине. Вы уверенно используете инструменты, которые упрощают разработку и позволяют сосредоточиться на самом важном — на коде. 🚀На открытом уроке 27 ноября в 19:00 мск мы разберем управление зависимостями в Python. Покажем, как работать с Pipenv и Poetry, сделаем акцент на практических кейсах и поможем разобраться в тонкостях. А после вебинара вы сможете пройти полный курс «Python Developer. Basic» на самых выгодных условиях, с поддержкой менторов и карьерным треком. 👉Присоединяйтесь к нам и позаботьтесь о будущем вашей карьеры: https://otus.pw/JZ3v/?erid=LjN8K5Rjs  Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.