20070
Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL
PyAction | Если вам нужна своя логика CI / CD
PyAction — это специальный инструмент, позволяющий писать кастомную логику для GitHub Actions и ориентированный на специфические для Python задачи (например, установка пакетов, запуск тестов и так далее).
Quickstart
#инструмент #cicd
@zen_of_python
Tproger дарит мерч за лучшую статью
Кто-то: думает, чтобы написать статью
Типичные программисты: уже написали, собирают просмотры и подписчиков.
На этой неделе мы хотим рассказать про статью от Александра Киселёва → Django vs FastAPI — автор статьи пишет о том, какой из них лучше для начинающих.
А если вы думали о чём написать статью, традиционно мы опубликовали список актуальных тем во флудильне.
Скоро мы будем подводить итоги лучших статей от читателей за ноябрь. Ещё не поздно принять участие и выиграть мерч!
Обратитесь к боту, чтобы выбрать одну из тем или предложить свою. Далее напишите статью и отправьте её на модерацию.
@zen_of_python
Разработай прорывное решение для автоматического Code Review с помощью ИИ на хакатоне ЕВРАЗа 3.0
Создайте будущее Code Review с ИИ!
Участвуйте в уникальном хакатоне по созданию ИИ-чатбота, который станет незаменимым помощником для разработчиков ЕВРАЗа! Выберите одно из направлений — Python, TypeScript или C# и разработайте решение для анализа кода на соответствие стандартам компании.
Как подросток превратил Twitter в личную машину для кражи денег?
Представьте: аккаунты Илона Маска, Билла Гейтса, Джеффа Безоса и даже Apple начинают публиковать странные твиты про биткоины. Мир в шоке, миллионы людей в недоумении, а за всем этим стоит... 17-летний парень.
Как он провернул крупнейший взлом соцсетей в истории? Кто ему помогал? И почему даже опытные хакеры аплодировали этой дерзости?
В новом выпуске подкаста «АЙТИ КРАЙМ» мы разбираем взлом, который поставил под удар доверие к крупнейшей платформе и заставил весь мир задуматься: а насколько безопасны наши любимые соцсети?
Слушайте и смотрите:
Яндекс.Музыка
Apple Music
Spotify
YouTube
Telegram
Интерактивный тренажёр по Python
Питонтьютор — это онлайн-платформа для обучения, не требующая установки. В ней встроен инструмент, который переводит ошибки с консоли на русский, читабельный язык. Для изучающих Python тут подготовлены сотни заданий разного уровня сложности, так что каждый подберёт себе подходящее.
Ссылка на питонтьютор
#курс #python #ru
django-project-template | Когда «пригорело» конструктивно
Один Python-разработчик, регулярно работающий с Django, сетовал на устаревшие темплейты на GitHub, не учитывающие новые крутые инструменты вроде uv (быстрый менеджер зависимостей на смену pip).
В своем обзоре Давид Гийо заменяет «голый» Makefile на just, предлагает переиначить дефолтную структуру Django-проекта и даже версионирует .env. Браво!
Сам темплейт на GH
@zen_of_python
Вышел Flask 3.1.0
Среди обновлений:
- Параметр -e path имеет приоритет над стандартными файлами .env и .flaskenv
- Запрос.max_content_length можно настроить для каждого запроса
- опции конфигурации для управления автоматическими ответами на опции и проч.
Release Note
@zen_of_python
Очень удобная шпаргалка про Python
Выверенное представление различных терминов языка на quickref.me. Здесь и про типы данных, и про модули, и про классы с наследованием.
#основы
@zen_of_python
Говорят, Senior Python Devs размножаются, откладывая яйца, но наличие сей способности не приближает Собчак к этой позиции.
#кек
@zen_of_python
prefect.io | Airflow для ML
Адаптированный под Машинное обучение оркестатор, что облегчит вашему проекту MLOps. Обладает аналогичными фичами вроде Cron-based планирования и повторных попыток, однако предлагает безсерверную инфраструктуру и облачный UI.
Есть условно бесплатный тариф.
Prefect vs. Airflow
Репозиторий проекта с 17К+ звезд на GitHub
Case study: обмен данными между процессами
✍️ - что такое Airflow?
🗿 - мне хватает Airflow
PhySO | DL-регрессия для подбора функции
Модуль использует глубокое обучение с подкреплением для подбора наиболее подходящей функции, описывающей данные.
Цена: бесплатно
Репозиторий проекта
@zen_of_python
Отличная новость для Data Analyst, Data Engineer и Data Scientist!
16 ноября у вас есть возможность за один день пройти все этапы интервью и получить оффер!
А самое интересное – в One Day Offer примут участие сразу несколько команд Сбера: Сеть Продаж, Стратегия и развитие, Финансы, Marketing AI, блок В2С, Департамент «Занять и сберегать» и СберНадежность. Такое нельзя пропустить!
Команды разрабатывают DS-решения для обслуживания клиентов, поддержки банковских операций, рекламных программ, чат-ботов, умных ассистентов и не только.
Регистрируйтесь и приходите 16 ноября!
Это #партнёрский пост
ну вот и дошутились, сеньоры, берегитесь
Питонисты, тут у вас конкурент растет (буквально). На YouTube нашли PROGRAMMER_SEREGA/videos">канал с уроками по Python, который ведет семилетний Сережа. Малой выкладывает видео уже чуть больше года. Если искали, как писать нейросетки, то вам, судя по всему, туда.
Ждем, когда Сережу захантят в какой-нибудь финтех.
@your_tech
Предложка в Zen of Python
В этом посте вы можете оставлять свои идеи для публикаций или запрашивать разбор той или иной темы.
Это обсуждение отправится в закреп, так что вы всегда можете попросить разбор / обсуждение / что угодно релевантное здесь.
#предложка
@zen_of_python
DataAnonymization | обезличиваем базу
Полезный тул на Java, который быстро устранит имена, телефоны и пароли из вашего экземпляра MySQL / PostgreSQL / MariaDB / hive и проч. Работает в командной строке.
Древний китайский мудрец сказал однажды: «Нужда в таких дополнительных шагах, как анонимизация данных, коррелирует со сливами баз, а не с обучением моделей ML».
А какие инструменты анонимизации вы использовали? Поделитесь в комментариях.
Цена: бесплатно
Репозиторий проекта
@prog_tools
Техинтервью на должность Python-разработчика
Вне зависимости от грейдов, для всех питонистов на собеседовании существуют мастхэв-вопросы. О них и идет речь в видео от Rineisky Dev: типы данных, лямбда-функции, генераторы, асинхронность. Бонусом Git, Docker, Linux. 2+ часа базы.
Смотреть на замедленотьюбе
@zen_of_python
Шпаргалка PostgreSQL для взрослых
Хорошая подборка полезных команд psql и запросов к метаданным вашей БД про производительность, одновременные запросы, заполненность диска и проч.
#шпаргалка #продвинуто
@zen_of_python
Залетайте на крутое IT-мероприятие, посвящённое AI и передовым технологиям разработки рекомендательных систем
Регистрируйтесь и получайте ссылку на трансляцию, или приходите очно, если живёте в одном из городов.
Где и когда?
— Владивосток, 26 ноября
— Новосибирск, 28 ноября
— Нижний Новгород, 5 декабря
— Санкт-Петербург, 6 декабря
Вас ждут крутейшие доклады, живая дискуссия и новые знания в сфере рекомендательных систем.
Количество мест ограничено — успей занять своё и прикоснуться к миру AI!
Это #партнёрский пост
print: база + интересные факты
Синтаксис:print([object, ...][, sep=’ ‘][, end=’\n’][, file=sys.stdout]
Параметры sep, end и file, если они необходимы, должны передаваться в виде именованных аргументов, то есть с использованием специального синтаксиса «имя=значение». Их могут указывать в любом порядке в вызове функции, но после объектов, предназначенных для вывода, и определяют параметры вывода:
— sep – строка, которая должна вставляться между объектами при выводе. По умолчанию состоит из одного пробела. Чтобы подавить вывод строки разделителя, в этом аргументе следует передать пустую строку.
— end – строка, добавляемая в конец выводимого текста. По умолчанию содержит символ конца строки \n. Если в этом аргументе передать пустую строку, следующий вызов функции print начнет вывод текста с позиции, где закончился вывод текущей строки.
— file – объект файла, стандартный поток или другой объект, похожий на файл, куда будет выводиться текст. with open('output.txt', 'w') as f: # Используем print для записи в файл с немедленным сбросом буфера print("Hello, World!", file=f, flush=True)
Функция print получает текстовое представление объекта с помощью встроенной функции str. Это может привести к неожиданным результатам на выводе: «сплющенные» массивы, ссылка на объект в памяти (<__main__.NoStrClass object at 0x...>) вместо самого «контента».
Интересные факты:
— В Python 2.X print – это инструкция, в Python 3.X встроенная функция, которая принимает именованные аргументы. Поэтому в 3.X и появились скобки.
— Можно перечислять очень много аргументов:print("Python", "is", "fun!")
— Для «красивого» вывода сложных объектов можно использовать pprint
— Дебаггинг с print называется «волчья стена» (раньше для отлова волков на огороженной земле возводили забор по середине, чтобы отсечь половину территории, где мог находиться хищник, и так «половинили» до излова)
— Если вы получаете <main.MyClass object at 0x...> вместо самих данных, значит, в кастомном классе того или иного инструмента нет встроенного метода __str__ / __repr__. Тут нет единой формулы решения, однако StackOverflow полнится подобными вопросами.
@zen_of_python
Даже похож на Прометея чем-то
#кек
@zen_of_python
rich-cli| Цветной вывод в командной строке
Подсветит не только --help, но и многие другие объекты:
- вычитываемые файлы с кодом
- составные команды
- файлы.json и проч.
Цена: бесплатно
Репозиторий проекта
✍️ - интересно
🌭 - не актуально
#инструмент
@zen_of_python
dataherald | Из естественного языка в SQL-запрос
Целое API, которое позволит общаться с вашей базой данных в режиме диалога на базе ChatGPT, потому на русском языке тоже. Есть веб-интерфейс. Поднимается из контейнера Docker.
Пусть ваш дата-аналитик понервничает.
Цена: бесплатно (взимают только за токены)
Репозиторий проекта c 3,5K звезд
@zen_of_python
featuretools | Автоматизируем поиск фичей
Инструмент позволяет автоматически выделять новые признаки из вашего табличного датасета с помощью Машинного обучения. Справляется с преобразованием из одного типа данных в другой (например, из временных рядов о покупках в матрицу признаков о конкретном покупателе).
Цена: бесплатно
Репозиторий проекта
Демо
А вы пользуетесь вспомогательными инструментами при генерации признаков? Поделитесь в комментариях.
#инструмент
@zen_of_python
Большая шпаргалка по Linux
"Познав команды, познаешь саму систему. Настоящий юзер не запоминает всё — он просто знает, где найти."
— Лин Уксоид
Простыми словами о сложном: Перегрузка операторов в Python
В действительности термин означает всего лишь перехватывание встроенных операций с помощью классов. Вот краткий обзор ключевых идей в основе механизма перегрузки:
- Перегрузка позволяет классам участвовать в обычных операциях.
- Классы могут перегружать все операторы выражений.
- Классы могут также перегружать такие операции, как вывод, вызов функций, обращение к атрибутам и так далее.
- Перегрузка делает экземпляры классов более похожими на встроенные типы.
- Перегрузка заключается в реализации в классах методов со специальными именами.
Давайте рассмотрим пример.
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__ определяет, как объект будет представлен, чтобы было удобно его видеть при выводе. В итоге, мы теперь умеем складывать вектора, как на уроках школьной алгебры, простым знаком плюса.__init__: Вызывается при создании нового объекта, используется для инициализации атрибутов объекта.__str__: Определяет строковое представление объекта, используется функцией str() и при выводе через print().__repr__: Определяет, как будет выводится итоговый объект. __add__: Перегружает оператор +, используется для определения поведения сложения объектов.__sub__: Перегружает оператор -, используется для определения поведения вычитания объектов.__mul__: Перегружает оператор *, используется для определения поведения умножения объектов.__truediv__: Перегружает оператор /, используется для определения поведения деления объектов.__getitem__: Перегружает оператор [], используется для доступа к элементам объекта, как в списках или словарях.__setitem__: Перегружает оператор [], используется для задания значений элементам объекта.__len__: Возвращает длину объекта, используется функцией len().
Самая красивая и лаконичная шпаргалка bash
В твиттерской опубликовали ладно скроенную инфографику от sysexplore.com, которая поможет не только ознакомиться с базовой терминологией скриптинга, но и с вычиткой параметров из файла, хэндлинг сигналов (SIGTERM) и проч.
@zen_of_python
26 полезных приёмов и хитростей Python
Забираем статью, где рассказывается о полезных инструментах в Python, которые упрощают жизнь разработчикам, решая самые разные задачи — от визуализации данных до быстрого поиска ответов на вопросы.
Разбирают удобные библиотеки и функции, которые можно использовать каждый день, включая нестандартные способы работы с текстом, графикой, геолокацией и другими типичными задачами.
#советы #python #ru