python_academy | Unsorted

Telegram-канал python_academy - Python Academy

-

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

Subscribe to a channel

Python Academy

Работа с методом str.replace() в Python

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

Метод принимает два основных аргумента: первый - это подстрока, которую нужно заменить в исходной строке, а второй - это подстрока, на которую происходит замена.

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

#python #replace

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

Python Academy

Daphne

Daphne — это сервер HTTP, HTTP2 и WebSocket для ASGI и ASGI-HTTP, разработанный для поддержки Django Channels. Он поддерживает автоматическое согласование протоколов; нет необходимости в префиксации URL-адресов для определения конечных точек WebSocket по сравнению с конечными точками HTTP.

#python

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

Python Academy

Дизассемблирование

При запуске программы на python, написанный код преобразуется в байт-код, который затем может быть запущен в интерпретаторе Python. Встроенный модуль dis позволяет дизассемблировать байт-код в удобное представление для просмотра его инструкций. Полный спсиок инструкций байт-кода с описанием можно посмотреть в доке модуля.

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

#модули #байткод

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

Python Academy

Операции с zip архивами 

Для работы с zip файлами можно использовать встроенный модуль zipfile. Если кто не помнит, то zip файл — это архив, содержащий сжатые файлы. 

Просмотреть содержимое архива можно с помощью функции printdir, а извлечь все файлы можно вызвав extractfile

Также этот модуль позволяет создавать свои zip архивы, но мы решили не усложнять пример, поэтому просто прикладываем ссылку на документацию. 

#zipfile

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

Python Academy

Центральный университет сотрудничает с 30 ведущими промышленными гигантами

Центральный университет — первый вуз в России на основе STEM-модели (Science, Technology, Engineering, Mathematics) — раскрыл 30 первых индустриальных партнеров.

Банк России, Норникель, VK, Росатом, МТС, Тинькофф, Avito, Kaspersky, Ozon, X5 Group и другие компании стали сооснователями, корпоративными инвесторами и индустриальными партнерами вуза. Компании создают собственные образовательные программы на базе ЦУ, становятся потенциальными работодателями для студентов и выпускников, предоставляют возможности прохождения стажировок и трудоустройства.

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

Такой подход поможет решить одну из важнейших задач отрасли — дефицит квалифицированных ИТ-специалистов на рынке.

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

Python Academy

Распознаем речь используя SpeechRecognition

SpeechRecognition — это библиотека на Python, которая предоставляет возможность использовать API для распознавания речи от различных компаний, таких как Google, Microsoft, IBM и другие. Кроме того, она поддерживает работу в офлайн-режиме.

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

#python #speechrecognition

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

Python Academy

Валидаторы данных

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

Модуль validators позволяет использовать уже готовые валидаторы для самых распространенных задач. В примере можете как раз увидеть валидацию почты и ссылок.

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

#python #validators

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

Python Academy

От создателей Академии Аналитиков Авито — открытый курс по прикладной статистике.
Бесплатно, без регистрации и смс.

Для тех, кто хочет научиться:
– применять критерии Манна-Уитни, t-test, бутстрап, хи-квадрат;
– использовать специализированные библиотеки Python;
– разрешать спорные ситуации при анализе данных.
– экспериментировать, выводить критерии, доказывать формулы.

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

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

Python Academy

Автоматизируем браузер с Pyppeteer

Pyppeteer — это Python-библиотека, позволяющая управлять браузером с помощью инструмента Puppeteer, изначально разработанного для Node.js. Puppeteer предоставляет возможность автоматизировать взаимодействие с веб-страницами, выполнять сценарии на основе браузера, делать скриншоты, создавать PDF-файлы и многое другое.

Пример использования Pyppeteer для выполнения поиска в Google и сохранения результатов в виде скриншота доступен на фото.

#python #pyppeteer

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

Python Academy

Перечисления

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

Из документации можно узнать о том, что Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность.

Также можно задать геттер через @property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex.

#enum

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

Python Academy

Дробные числа

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

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

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

#числа #fraction

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

Python Academy

GitVerse – теперь и для малого и среднего бизнеса

На онлайн-презентации «GitVerse: открой вселенную кода» СберТех рассказал про новые фичи платформы. Cреди них – CI/CD-инструменты, ускоряющие разработку, и новые функции GigaCode – персонального AI-ассистента разработчика (AI, artificial intelligence — искусственный интеллект).

Но это еще не все: теперь возможности GitVerse доступны не только индивидуальным разработчикам, но и малому и среднему бизнесу. Это очень удобно: можно организовывать совместную работу команды с GitVerse и управлять доступами к своим репозиториям.

Готовы попробовать? Присоединяйтесь.

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

Python Academy

От создателей Академии Аналитиков Авито — открытый курс по прикладной статистике.
Бесплатно, без регистрации и смс.

Для тех, кто хочет научиться:
– применять критерии Манна-Уитни, t-test, бутстрап, хи-квадрат;
– использовать специализированные библиотеки Python;
– разрешать спорные ситуации при анализе данных.
– экспериментировать, выводить критерии, доказывать формулы.

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

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

Python Academy

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

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

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

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

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

#moviepy

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

Python Academy

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

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

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

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

#sh

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

Python Academy

Новости для будущих студентов

Ректор Центрального университета Евгений Ивашкевич раскрыл планы вуза по вовлечению большого бизнеса в образовательные процессы страны. "Очень скоро мы можем остаться без инженерных и IT-кадров. Все понимают, что через 10–15 лет не с кем будет работать. Именно поэтому наша задача – это привлечь бизнес к решению проблем образования. Чтобы бизнес вкладывался в образовательные проекты в области информатики, физики и химии," - подчеркнул Ивашкевич.

По словам ректора, четыре года назад в стране профильную математику на ЕГЭ сдавало около 360 000 школьников, а в прошлом году – всего 283 000 школьников. "Компаниям недостаточно просто открывать свои кафедры в вузах. На таких кафедрах, как правило, учатся 30–40 человек, что совсем немного — это не решает проблему дефицита кадров стране," - пояснил он.

Именно поэтому был создан Центральный университет — вуз от бизнеса и для бизнеса. "Мы хотим дать нашим студентам и образование, и профессию. Только так можно обеспечить эффективный социальный лифт для выпускников, сделать их востребованными специалистами на рынке труда," - отметил Евгений.

18 и 19 мая Центральный университет проведет масштабный День открытых дверей перед стартом приемной кампании.

Мероприятие пройдет в головных офисах партнеров ЦУ — VK и Тинькофф.

🔗 Гостям обязательно нужно пройти регистрацию

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

Python Academy

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

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

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

#модули

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

Python Academy

Яндекс впервые проведет Young Con — фестиваль про карьеру в IT и современные технологии

• 6000 участников
• Более 10 часов нетворкинга и интерактивных активностей
• 9 тематических «миров», которые погрузят участников в разные сервисы компании
• 30 руководителей Яндекса, которые расскажут, как создаются технологии, а также поделятся опытом и советами, как начать карьеру в Яндексе

Фестиваль в стиле гик-приключения понравится тем, кто интересуются технологиями и хочет узнать больше про работу и возможности для развития в крупных IT-компаниях.
Young Con состоится 27 июня на Live Arena.

На фестивале станет известен победитель масштабного студенческого турнира по спортивному программированию «Баттл вузов». Участники команды-победителя разделят между собой призовой фонд в 1 млн рублей.

А в конце фестиваля выступят группы The Hatters и Хлеб.

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

Регистрация уже открыта.

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

Python Academy

FFmpeg: Лучшее решение для обработки мультимедийных файлов

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

Для начала использования FFmpeg, вы можете установить библиотеку командой pip install ffmpeg-python. После этого, вы можете создавать собственные скрипты для обработки видео и аудио файлов, определяя нужные операции и параметры. ffmpeg-python обладает мощными возможностями для конвертации, обрезки, склеивания и многого другого.

Исходный код и документация доступны тут

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

Python Academy

Отладка утечек памяти в Python приложении

Для отладки утечек памяти в Python можно использовать инструменты, такие как Memory Profiler и objgraph. Эти инструменты помогут вам выявить, какие объекты удерживают ссылки и могут вызывать утечки памяти.

Memory Profiler позволяет получить детальный отчет о потреблении памяти в каждой строке кода вашего скрипта. Чтобы воспользоваться этим инструментом, запустите вашу программу с помощью следующей команды:

python -m memory_profiler my_script.py


objgraph помогает визуализировать ссылки между объектами, что позволяет легко понять, какие объекты удерживают ссылки на другие объекты. Например, следующий код создаст изображение my_list.png, на котором будут показаны все объекты, на которые ссылается my_list, и все объекты, которые ссылаются на них.

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

#python #memoryprofiler #objgraph

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

Python Academy

Президент OpenAI Грег Брокман только что показал, как ИИ общается с ИИ на примере нового GPT-4o. Перед Брокманом лежат два телефона, на которых открыты ИИ с разной формой взаимодействия: один голосовой, а другой может анализировать видео с камеры. Полное видео с разговором между тремя субъектами длится шесть минут.

Мы официально входим в эпоху, когда один ИИ будет загадывать другому ИИ загадку про два стула ¯\_(ツ)_/¯

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

Python Academy

pow()

В Python функция pow() используется для вычисления степени числа. Вот как она работает:

result = pow(x, y, z)



где: x — основание степени,
y — показатель степени,
z (необязательный параметр) — модуль, по которому производится вычисление.
Если z указан, то pow(x, y, z) возвращает (x y) % z. Если z не указан, то возвращается x y.

#python

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

Python Academy

Модуль warnings

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

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

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

#python

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

Python Academy

Отправка писем с использованием SMTP в Python

SMTP (Simple Mail Transfer Protocol) - это протокол, который обеспечивает отправку электронных писем. В Python для работы с этим протоколом доступен модуль smtplib из стандартной библиотеки.

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

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

Стоит учитывать, что некоторые почтовые сервисы могут иметь ограничения и дополнительные требования безопасности. Например, для работы с Gmail может понадобиться включить поддержку "доступа к ненадежным приложениям" и настроить двухфакторную аутентификацию.

#python #smtp

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

Python Academy

Зачем использовать pdb

pdb — это интерактивный отладчик Python, который позволяет пользователю управлять выполнением программы: перемещаться по коду, просматривать и изменять значения переменных, пошагово проходить через код, включая вложенные структуры, устанавливать точки остановок и выполнять другие типичные действия для отладки.

Этот модуль обладает интерфейсом командной строки, с помощью которого можно управлять выполнением кода на Python в реальном времени. Чтобы активировать режим pdb в вашей программе, достаточно добавить следующую строку кода.

#python #pdb

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

Python Academy

Редирект вывода программы

В contextlib есть еще один прикольный контекстный менеджер — redirect_stdout, позволяющий перенаправить стандартный вывод программы.

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

Таким образом, данные из print() в контекстом менеджере будут переправлены в открытый ранее файл, так как мы его передали в аргумент redirect_stdout.

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

#contextlib

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

Python Academy

Создаем интерактивные веб-приложения с Streamlit

Streamlit позволяет превращать скрипты Python в интерактивные веб-приложения за считанные минуты, а не за недели. Создавайте информационные панели, генерируйте отчеты или создавайте приложения для чата.

Создав приложение, вы можете использовать облачную платформу Community Cloud для развертывания, управления и распространения приложения.

Почему стоит выбрать Streamlit?

— Простота и питоничность: Пишите красивый, легко читаемый код.
— Быстрое интерактивное создание прототипов: Позвольте другим людям взаимодействовать с вашими данными и быстро предоставлять отзывы.
— Редактирование в реальном времени: Видите, как ваше приложение мгновенно обновляется по мере редактирования кода.

#python #streamlit

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

Python Academy

Управление версиями Python

Инструмент pyenv позволяет легко переключаться между несколькими версиями Python. Он прост в использовании и следует лучшим традициям UNIX, где каждая утилита хорошо выполняет одну свою задачу.

Вкратце, основной функционал pyenv выглядит так:

— Позволяет изменять глобальную версию Python для каждого пользователя;
— Обеспечивает поддержку версий Python для каждого проекта;
— Позволяет переопределить версию Python с помощью переменной окружения;
— Выполняет поиск команд из нескольких версий Python одновременно.

Кстати, этот проект основан на rbenv и ruby-build и модифицирован для Python.

#pyenv

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

Python Academy

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

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

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

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

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

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

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

Python Academy

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

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

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

#python #importlib

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