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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Уроки построены на примере реальных данных и показывают, как решаются задачи бизнеса с применением прикладной статистики. Рекомендуем.
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем интерактивные веб-приложения с Streamlit

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#python #pdb
Перечисления

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

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

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

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

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

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

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

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

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

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

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

#python #pyppeteer
Модуль warnings

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

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

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

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

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

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

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

result = pow(x, y, z)



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

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

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

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

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

#python #validators
2024/05/13 14:47:14
Back to Top
HTML Embed Code: