python_academy | Unsorted

Telegram-канал python_academy - Python Academy

-

Python Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @SeniorMaks Рекламодателям: bit.ly/3y1Py4

Subscribe to a channel

Python Academy

Редактируем видео

Пакет moviepy позволяет обрезать и склеивать видео, добавлять видеоэффекты, а также редактировать звук.

В целом, с пакетом разбораться не сложно, базовое использование показано на картинке. В примере мы открываем два видео, склеиваем их в одно, обрезаем полученный клип, уменьшаем громкость звука и в конце сохраняем результат.

Здесь еще важно отметить, что запуск и выполнение скриптов с обработкой видео может занять относительно большое время.

Такой пакет полезен в случаях, когда требуется обработать очень много видео по одному и тому же принципу.

#moviepy

Читать полностью…

Python Academy

Вызов программ операционной системы

sh — это полноценный интерфейс, как альтернатива subprocess, который позволяет вызывать любую программу, как если бы это была обычная функция.
Все запускаемые команды импортируются, как обычные функции, но функциями не являются, а лишь динамически обращаются к командам системы. Таким образом мы можем по сути обратиться к любой программе в системе.

sh полагается на системные вызовы Unix и работает только в Unix-подобных операционных системах, т.е. данный модуль не подойдет для работы с Windows.
Для обращения к командам программы и передать набор аргументов команды, мы можем передать их как обычные аргументы функции.

Также в модуле реализована функция which, которая находит полный путь до программы либо возвращает None, если программа не найдена.

#sh

Читать полностью…

Python Academy

Освой бэкенд-разработку на летней стажировке «Технолето» от Яндекса

Студенты смогут не только погрузиться в профессию, но и поближе познакомиться с вдохновляющей культурой Яндекса. Стажеров ждут образовательные мастер-классы, спортивные выезды, карьерные ивенты, зажигательные тусовки с диджеями и опен-эйр.

Во время стажировки студенты, желающие освоить бэкенд, узнают о тонкостях написания кода для высоконагруженных веб-сервисов, освоят навыки эксплуатации сложных систем, а также систематизируют знания и приобретут востребованные в индустрии скиллы. Помимо бэкенда, здесь можно освоить фронтенд, машинное обучение, аналитику, мобильную разработку и многое другое.

Стажировка оплачивается, а график обучения можно выстраивать под себя. Расходы на дорогу и проживание иногородним студентам компания оплачивает сама.

Больше половины стажеров Яндекса затем переходят в штат компании, поэтому это отличная возможность начать карьеру в BigTech.

Оставляй заявку на участие в программе «Технолето» и проходи тестовое задание.

Читать полностью…

Python Academy

🚀 Python Митап: Django VS Litestar, Токены отмены, Liveconfigs и многое другое!

Модератор — Григорий Петров, Devrel Evrone
Эксперт - Никита Соболев, независимый open-source разработчик

🔥 Темы и спикеры:

✔️ Django VS Litestar: кто круче? — Александр Гончаров, Reef Technologies

Рассмотрим относительно новый фреймворк Litestar и сравним его с гигантом Django, чтобы понять, что в новинке круто, а чего не хватает

✔️ Токены отмены: паттерн и тулинг — Евгений Блинов, VK

Узнайте о токенах отмены, элегантном способе описания ограничений в коде и их отмене извне для улучшения тестируемости и читаемости.

✔️ Управляем кодом из админки с помощью Liveconfigs — Денис Дудник, Factory5

Погрузитесь в мир кастомных настроек алгоритмов и бизнес-правил в Django-проектах. Узнайте о django-liveconfigs и его преимуществах перед классическими подходами.

✔️ Доверяй, но проверяй — Алексей Жиряков, KION

Данные основа современного мира, на них обучаются нейросети и другой МЛ, через их призму видят пользователя в продукте, принимают решения по внедрению и поддержке фич, выбирают направления развития.

➖➖➖

🗓 24 апреля, начало в 19:00 мск, Среда

🌐 ОНЛАЙН

Регистрация на митап

Реклама, ООО "Эвроне.ру", ИНН 3663057399

Читать полностью…

Python Academy

Используйте dict.get() вместо dict[]

Есть несколько способов получения значений из словарей, и даже по такой теме разработчики часто спорят.

Многие получают значения по ключам через квадратные скобки, но если такого ключа нет, то будет вызвано исключение.

Поэтому мы считаем, что лучше использовать метод get у словарей. Его основной плюс заключается в том, что он принимает опциональный аргумент, отвечающий за значение по умолчанию.

Таким образом, если значение по ключу не найдено, то вернется дефолтное значение.

В итоге, мы убираем возможные ошибки в случае, если нужных ключей в словаре нет.

#python #dict

Читать полностью…

Python Academy

Работаете в области проектирования ПО и хотите ускорить свой профессиональный рост? Выйти на новый уровень будет гораздо проще с онлайн-магистратурой Яндекса и ИТМО «ПО высоконагруженных систем».

Поступив на программу, вы с первого семестра погрузитесь в работу над реальными задачами из индустрии. Собирая ценные кейсы в портфолио, вы прокачаете навыки проектирования сложных систем и управления крупными проектами. Всё это — онлайн, из любой точки мира!

Программа подходит как выпускникам профильных вузов и стажёрам, так и специалистам с опытом. Первым можно будет пройти двухлетний стандартный трек, а вторым — ускоренный, изучая интересующие дисциплины на протяжении года.

Подайте заявку на магистратуру и выйдите на новый уровень в IT.

Читать полностью…

Python Academy

Ruff

Ruff — Чрезвычайно быстрый линтер и форматер кода на Python, написанный на Rust.

Основным преимуществом Ruff является его скорость. Ruff в 10-100 раз быстрее аналогов. В сравнении с flake8, автор заявляет о практически полном совпадении с набором правил инструмента и нативной реализацией популярных плагинов (flake8-bugbear и т.д.). Также Ruff совместим с Black «из коробки».

Ruff может форматировать код. Например, он автоматически удаляет неиспользуемые импорты. Что касается сортировки и группировки строк импорта, то она практически идентична isort.

#python #ruff

Читать полностью…

Python Academy

memoryview()

memoryview() в Python предоставляет объект для доступа к внутреннему представлению данных в виде буфера без копирования. Этот объект позволяет вам просматривать байты объекта, не копируя их, а также выполнять различные операции на уровне байтов.

memoryview() также может использоваться для работы с массивами и другими объектами, поддерживающими буферный интерфейс в Python.

Этот инструмент особенно полезен, когда вам нужно работать с большим объемом данных, и вы хотите избежать копирования данных, что может быть затратным с точки зрения времени и ресурсов.

#python

Читать полностью…

Python Academy

Узнаём атрибуты и методы класса

С помощью dir() можно получить список всех атрибутов и методов ‌‎любого‌‎ ‌‎объекта. Может пригодиться при изучении пакетов сторонних разработчиков.

Читать полностью…

Python Academy

Перебираем все возможные 8 значные пароли состоящие из букв и цифр с помощью Python

В этом примере используется модуль itertools, который позволяет генерировать все возможные комбинации символов из списка characters длиной password_length. Затем перебираются все комбинации и выводятся на экран.

Обратите внимание, что перебор всех возможных 8-значных паролей может занять большое количество времени, особенно если количество символов в characters большое. Будьте осторожны и убедитесь, что ваше намерение соответствует законам и этическим правилам.

#python #itertools

Читать полностью…

Python Academy

Больше выгодных предложений для самозанятых

Если вы уже самозанятый или только планируете оформиться, то выгоднее всего сейчас вести самозанятость в СберБанк Онлайн.

▪️Сервис полностью бесплатный
▪️В сервисе доступны бесплатные полезные услуги, например, онлайн-запись клиентов
▪️Для самозанятых в Сбере ставка на кредиты ниже на 1%

Кстати, подключить сервис и пользоваться всеми привилегиями могут даже те, кто уже оформил ведет самозанятость в ФНС или других банках. Данные синхронизируются с ФНС, и вы сможете продолжить вести дела в СберБанк Онлайн.

Если вы подключитесь к сервису для самозанятых до 30 апреля, то сможете поучаствовать в розыгрыше 16 миллионов бонусов. Более подробную информацию можно найти здесь.

Читать полностью…

Python Academy

Важное про цифры и Юникод

0, 1, 2, 3, 4, 5, 6, 7, 8, 9 — не единственные символы, которые считаются цифрами. Python следует правилам Юникода и обрабатывает несколько сотен символов как цифры. Полный список находится здесь.

Это крайне важно знать, потому что эти символы влияют на такие функции, как int, unicode.isdecimal и даже re.match.

Думаю, в один момент это знание сэкономит вам время на исправление "бага" с такими странными символами. Предупрежден — значит вооружен.

#python #unicode

Читать полностью…

Python Academy

Функция math.perm()

math.perm() используется для определения количества возможных способов выбора и расположения m элементов из набора n элементов. Этот метод включен в модуль math.

Он требует указания двух параметров: nобщее число элементов в наборе, и m — число элементов в каждой возможной выборке. Результатом выполнения функции является целочисленное значение, представляющее число таких перестановок. Если n меньше m, функция возвратит 0.

Пример использования: расчет количества перестановок трех элементов из пяти. Это демонстрирует, сколько существует вариантов формирования трехэлементных подмножеств из пятерки.

#python

Читать полностью…

Python Academy

dict.get()

dict.get() — это метод словаря, который используется для получения значения по заданному ключу. Однако, в отличие от обращения к элементу словаря с использованием квадратных скобок (dict[key]), метод get() предоставляет дополнительную возможность задать значение по умолчанию, которое будет возвращено, если ключ не найден в словаре.

Синтаксис метода get() выглядит так:

value = dict.get(key, default)

key: Ключ, по которому производится поиск в словаре.
default (необязательный): Значение, которое будет возвращено, если ключ не найден в словаре. Если default не указан, и ключ не найден, метод вернет None.

#python

Читать полностью…

Python Academy

🚀 Едадил приглашает Python-разработчиков на борт!

Едадил – сервис Яндекса, где собраны скидки, спецпредложения и кэшбеки. Мы помогаем людям совершать выгодные покупки!

Мы в поиске талантливых Python-разработчиков, специализирующихся на асинхронном программировании и с опытом коммерческой разработки более 3 лет.
Если вы мастер своего дела и готовы к новым вызовам, присоединяйтесь к нашей команде!

Ищем специалистов из разных уголков России!

Что вас ждет?

● Работа в классном офисе в гибридном формате
● Конкурентоспособная заработная плата, соцпакет и возможности для профессионального роста.
● Работа в команде единомышленников над проектами, влияющими на жизнь миллионов пользователей.

Выбирайте подходящую вакансию:
Asyncio Python-разработчик
Python-разработчик с опытом в PostgreSQL, noSQL, Docker и Git
Python-разработчик с навыками в Python 3.10, aiohttp, YQL, YTsaurus, Docker

Реклама ООО "Яндекс"
ИНН 7736207543

Читать полностью…

Python Academy

Финал ICPC — победа команд ВШЭ и МФТИ

Сотрудники, студенты, преподаватели и стипендиаты Тинькофф в разные годы принимали участие в ICPC. В этом году команды ВШЭ и МФТИ забрали абсолютное чемпионство, золото и серебро, сразу в двух финалах.

ICPC — это командный студенческий чемпионат мира по программированию, ежегодно собирающий лучшие вузы планеты. В этом году был организован двойной финал, чтобы компенсировать мероприятия, не проводившиеся в годы пандемии.

ВШЭ:
— Александр Бабин, преподаватель Тинькофф Поколения — абсолютный победитель;
— Федор Ромашов, стипендиат Тинькофф — абсолютный победитель;
— Кирилл Кудряшов, стипендиат Тинькофф — абсолютный победитель.

МФТИ:
— Шеховцов Александр, стипендиат Тинькофф — серебро;
— Всеволод Нагибин, стипендиат Тинькофф — золото;
— Тихон Евтеев, стипендиат Тинькофф — золото.

Мы очень болели за ребят и надеемся, что стипендиальная программа помогла ребятам сосредоточиться на подготовке! Отдельно поздравляем тренеров команд: Филиппа Руховича, преподавателя Тинькофф Поколения, Демида Кучеренко, автора курса Тинькофф Образования «Информатика решает», и Михаила Густокашина, члена жюри конкурса для школьных учителей «Вклад в поколение»!

Читать полностью…

Python Academy

Как перезагрузить импортированный модуль?

Чтобы перезагрузить импортированный модуль в Python, вы можете использовать функцию reload() из модуля importlib

Замените module_name на фактическое имя модуля, который вы хотите перезагрузить. Это может быть полезно при разработке и тестировании модулей, но не рекомендуется использовать в проде без серьезных причин.

#python #importlib

Читать полностью…

Python Academy

Аргументы командой строки

При запуске программ через терминал можно указывать аргументы через пробел. В Python список этих аргументов хранится в переменной argv во встроенном модуле sys.

Первым элементом всегда является имя запускаемого скрипта, вторым и далее — непосредственно сами аргументы.

#sys

Читать полностью…

Python Academy

Kivy

Kivy - это мощный кроссплатформенный фреймворк для разработки графических интерфейсов пользователя (GUI).

Основное его преимущество заключается в универсальности: созданные при помощи Kivy приложения могут запускаться на различных операционных системах, включая Windows, macOS, Linux, а также мобильные платформы Android и iOS.

#python #kivy

Читать полностью…

Python Academy

Генерация капчи

Сегодня покажем создание простейшей капчи. Для этого нам понадобится модуль captcha и Pillow, который используется для создание изображений в captcha.

Все максимально просто, за нас по сути все делает уже написанный в модуле код. Создаем объект изображения ImageCaptcha, на который будет нанесен текст. После чего вызываем метод write с заданным текстом и именем файла, в который будет записано изображение.

#captcha

Читать полностью…

Python Academy

Режим разработки

Оказывается, еще в Python 3.7 появилась возможность запускать скрипты со специальным флагом -X для указания различных вариантов реализации.

Например, -X dev запускает скрипт в режиме разработки с функциями отладки и runtime-проверки, которые не используются по умолчанию из-за своей медлительности.

Также этот режим выводит дополнительные предупреждения в следующих случаях:

— Незакрытые файлы;
— Unawaited корутины;
— Неизвестная кодировка для str.encode;
— Проблемы с выделением памяти.

В целом, классная штука и имеет смысл периодически запускать скрипты в таком режиме, чтобы не упустить никакие баги.

#python

Читать полностью…

Python Academy

Вау, две российских нейронки попали в международный рейтинг от TechBullion! На пятом месте — Kandinsky от Сбера за умение создавать сложные изображения с глубоким подтекстом. На десятом — YandexART за генерацию в разных стилях.

Midjourney нервно затрясся.

@whackdoor

Читать полностью…

Python Academy

27 и 28 апреля приглашаем специалистов робототехники и reinforcement learning на ROS Meetup в Москве 📅

Это возможность для робототехников всех уровней: от новичков до экспертов, — посвятить выходные практическому обучению и нетворкингу. Вы получите советы и рекомендации экспертов, сможете поделиться идеями с другими разработчиками. Доклады охватывают весь спектр тем: от ROS до reinforcement learning и антропоморфных роботов.

Инженеры и руководители компаний поделятся реальным опытом использования ROS в исследовательских и коммерческих проектах.

В этот раз мы решили разбавить технические доклады большим количеством тематических дискуссий и нетворкинга.

На какие темы будем общаться:

Антропоморфные роботы

✔️ Reinforcement learning
✔️ LLM — large language mode, Deep learning
✔️ Беспилотные автомобили и мобильные роботы
✔️ Манипуляторы и алгоритмы в манипуляции, в том числе MOVEit
✔️ ROS-пакеты и другие темы в робототехнике

Локация: г. Москва, Кутузовский проспект 32к1, офис Сбера.

Регистрируйтесь по ссылке 👈

Читать полностью…

Python Academy

Библиотека setuptools

Библиотека setuptools является инструментом для упрощения процесса создания, установки и распространения пакетов Python. Она используется в основном для упрощения установки и управления зависимостями Python-пакетов.

setuptools
предоставляет функциональность для создания файлов setup.py, которые содержат информацию о вашем пакете, его зависимостях и других метаданных. Этот файл используется инструментами для установки пакетов, такими как pip.

#python #setuptools

Читать полностью…

Python Academy

Cравнение 2 аудиосообщений с помощью библиотеки для анализа звука

В библиотеку для анализа звука, например, librosa или PyAudio мы загружаем два файла и вычисляем их характеристики MFCC (Mel Frequency Cepstral Coefficients), которые представляют собой набор коэффициентов, описывающих звуковое пространство. Затем мы вычисляем расстояние между характеристиками с помощью функции dtln из librosa.core. Результат будет выведен в консоль.

Обратите внимание, что для сравнения аудиосообщений нужно, чтобы они имели одинаковую продолжительность и были записаны в одинаковых условиях (например, громкость, обработка шума).

#python

Читать полностью…

Python Academy

Включаем предупреждения об ошибках или исключениях с помощью модуля warnings

Модуль warnings предоставляет возможность управления предупреждениями, которые могут быть выведены во время выполнения программы.

Модуль warnings полезен, когда необходимо предупредить пользователя о каком-либо условии в программе и это условие не требует создания исключения и завершения программы.

#python

Читать полностью…

Python Academy

Хотите попробовать себя в роли аналитика и попрактиковаться на реальных задачах?

Приходите на бесплатный курс-симулятор Нетологии и Yandex Cloud «Основы анализа данных в SQL, Python, Power BI, DataLens».

В этой профессии много разных направлений — аналитик данных, BI-аналитик, продуктовый аналитик, Data Scientist. Но везде пригодится навык работы с инструментами-помощниками, которые вы и освоите на курсе.

Эксперты-практики расскажут, как делать простые отчёты, исследовать данные и строить интерактивные дашборды. А чтобы понять, что анализ данных — это точно ваше, вместе решите практические задачи из реальных кейсов.

Воспользуйтесь шансом попробовать новые инструменты и запишитесь на бесплатный курс Нетологии.

Регистрация: https://netolo.gy/c3Xk
Реклама. ООО "Нетология" LatgBcJFo

Читать полностью…

Python Academy

Работаем с картинками в Python

Библиотека Pillow — это очень мощный, быстрый и удобный инструмент для обработки графики в Python.

В сегодняшнем примере мы применим ее для конвертации картинки в черно-белую, обратим цвета, вертикально отзеркалим и сохраним в файл.

Метод Image.open('resources/img/cat.jpg') считывает картинку из папки.

img.convert('L') трансформирует картинку в черно-белую.

ImageOps.invert(image) обращает цвета.

img.transpose(Image.FLIP_LEFT_RIGHT) вертикально отзеркаливает картинку.

img.save('grayscale_cat.jpg') сохранит картинку на диске.

Больше официальных примеров и документацию можно посмотреть тут.

Пример можно посмотреть тут.

#pillow

Читать полностью…

Python Academy

Тестирование на pytest

pytest — ближе по духу к языку Python нежели unittest, которая накладывает определенные обязательства при разработке тестов. Например, создание классов-наследников от TestCase или выполнение определенной процедуры запуска тестов.

Но при разработке на pytest ничего этого делать не нужно. Вы просто пишете функции, которые должны начинаться с "test_" и используете assert, встроенные в Python.

Также он поддерживает запуск тестов на unittest и nose, то есть полная обратная совместимость с ними.

#python #pytest #assert

Читать полностью…

Python Academy

Форматируем строку для URL-адреса

Для начала стоит вспомнить, что слаг (slug) — это уникальная строка-идентификатор, понятная человеку и содержащая только "безопасные" символы: латинские символы в нижнем регистре, цифры и дефис.

Чаще всего такое понятие можно встретить в контексте URL-адресов. Например, можно формировать слаг из названия какой-нибудь статьи и вставлять его в ссылку, чтобы людям было понятно, куда они переходят.

Выше в коде мы написали простую функцию, где использовали методы lower() для приведения в нижний регистр и strip() для удаления пробелов слева и справа.

Также для удаления некоторых символов и замены на знак дефиса были использованы регулярные выражения и встроенный пакет re для работы с ними.

#python #re

Читать полностью…
Subscribe to a channel