TGINSIGHT CHAT
Python Academy
@python_academy
EducaciónPython Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
Posts recientes
Etiqueta: #python · 330 posts
Используйте dict.get() вместо dict[] Есть несколько способов получения значений из словарей, и даже по такой теме разработчики часто спорят. Многие получают значения по ключам через квадратные скобки, но если такого ключа нет, то будет вызвано исключение. Поэтому мы считаем, что лучше использовать метод get у словарей. Его основной плюс заключается в том, что он принимает опциональный аргумент, отвечающий за значение по умолчанию. Таким образом, если значение по ключу не найдено, то вернется дефолтное значение. В итоге, мы убираем возможные ошибки в случае, если нужных ключей в словаре нет. #python#dict
Библиотека для генерации рандомных данных Mimesis — это модуль, предназначенный для генерациислучайныхданных. Это особенно полезно при тестировании алгоритмов, когда требуется большойобъемданных. Использование Mimesis избавляет от необходимости создавать эти данные вручную, существенноэкономя время. Этот код сгенерирует случайные адресные данные, такие как название города, улицы, номер дома и координаты. #python#mimesis
Удаление страниц PDF-файла Библиотека PyMuPDF включает в себя довольно много сложных методов, которые упрощают удаление страниц из файла PDF. Он позволяет указать либо одну страницу (используя метод deletePage()), либо диапазон номеров страниц (используя метод deletePageRange()), либо список с номерами страниц (используя метод select()). В следующем примере показано, как использовать список для выбора страниц, которые нужно сохранить в исходном документе. Имейте в виду, что страницы, которые не указаны, не будут частью выходного документа. В нашем случае выходной документ содержит только первую, вторую и четвертую страницы. #python
Hashtags
Создание скриншотов с использованием модуля pyscreenshot Модуль pyscreenshot, обеспечивая кросс-платформенную функциональность, позволяет легко создавать скриншоты как всего экрана, так и его отдельных частей. Для работы этого модуля необходимо установить библиотеку Pillow. Для захвата изображения используется метод grab, для его отображения – show, а для сохранения – save. В метод grab можно также передать аргумент bbox, чтобы ограничить захват только определенной областью экрана. Этот модуль оказывается особенно полезным, например, при логировании скриптов, использующих Selenium. Selenium может открывать браузер и выполнять различные операции в нем, и использование pyscreenshot позволяет создавать скриншоты для последующего анализа и отладки. #python#pyscreenshot
Hashtags
PyJWT: Работаем с JSON Web Tokens в Python PyJWT — это библиотека Python, предназначенная для кодирования, декодирования и проверки подлинности JSON Web Tokens (JWT). JWT — это открытый стандарт (RFC 7519), который определяет компактный и независимый способ безопасной передачи информации между сторонами в виде JSON-объекта. Эта информация может быть проверена и доверена, так как она подписана цифровой подписью. В этом примере мы создаём JWT, который содержит идентификаторпользователя и срок его действия. Затем мы декодируем и проверяем токен, чтобы убедиться, что он ещё действителен и подлинен. #python#pyjwt
Форматируем строку для URL-адреса Для начала стоит вспомнить, что слаг (slug) — это уникальная строка-идентификатор, понятная человеку и содержащая только "безопасные" символы: латинские символы в нижнем регистре, цифры и дефис. Чаще всего такое понятие можно встретить в контексте URL-адресов. Например, можно формировать слаг из названия какой-нибудь статьи и вставлять его в ссылку, чтобы людям было понятно, куда они переходят. Выше в коде мы написали простую функцию, где использовали методы lower() для приведения в нижний регистр и strip() для удаления пробелов слева и справа. Также для удаления некоторых символов и замены на знак дефиса были использованы регулярные выражения и встроенный пакет re для работы с ними. #python#re
dict.get() dict.get() — это метод словаря, который используется для получения значения по заданному ключу. Однако, в отличие от обращения к элементу словаря с использованием квадратных скобок (dict[key]), метод get() предоставляет дополнительную возможность задать значение по умолчанию, которое будет возвращено, если ключ не найден в словаре. Синтаксис метода get() выглядит так: value = dict.get(key, default) key: Ключ, по которому производится поиск в словаре. default (необязательный): Значение, которое будет возвращено, если ключ не найден в словаре. Если default не указан, и ключ не найден, метод вернет None. #python
Hashtags
Ruff Ruff — Чрезвычайно быстрый линтер и форматер кода на Python, написанный на Rust. Основным преимуществомRuff является его скорость. Ruff в 10-100 раз быстрее аналогов. В сравнении с flake8, автор заявляет о практически полномсовпадении с набором правил инструмента и нативной реализацией популярныхплагинов (flake8-bugbear и т.д.). Также Ruff совместим с Black «из коробки». Ruff может форматировать код. Например, он автоматически удаляет неиспользуемые импорты. Что касается сортировки и группировки строк импорта, то она практическиидентичнаisort. #python#ruff
Распаковывание последовательностей при неизвестном числе элементов Для указанного в подзаголовке случая в Python 3 есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции. #python
Hashtags
Рассказываем как легко узнать самое короткое расстояние между двумя точками земли Геодезическое расстояние — это длина кратчайшего пути между двумя точками на любой поверхности Земли. В следующем примере мы покажем, как пользователь может вычислить геодезическое расстояние на основе данных широты и долготы. В примере узнали, что расстояние между городами Нью-Йорк и Техас 2507 километров. #python
Hashtags
Слияние аудио и видео потоков Проблема с получением видео в высоком качестве со звуком с YouTube связана с использованием технологии DASH (Dynamic Adaptive Streaming over HTTP), которая не предусматривает наличие звуковой дорожки в потоке. Решением является отдельное получение аудио и видео потоков и их последующее объединение с использованием программы ffmpeg. Необходимо выбрать соответствующие аудио и видео потоки, затем использовать полученные URL в команде ffmpeg для запуска процесса загрузки и слияния потоков. #python#ffmpeg#pytube
Знакомство с библиотекой NumPy в Python Что такое NumPy? NumPy (Numerical Python) - это популярная библиотека для вычислительных операций с многомерными массивами и матрицами, а также для выполнения высокоуровневых математических функций. Она предоставляет эффективные инструменты для работы с большими объемами данных и позволяет выполнять различные операции, такие как суммирование, умножение, индексацию и многое другое, без необходимости явно создавать циклы. Преимущества NumPy: - Производительность: NumPy выполняет операции над массивами быстрее, чем стандартные структуры данных Python. - Удобство: NumPy предоставляет удобные методы для работы с данными, такие как срезы, индексация и броадкастинг. - Интеграция: Библиотека интегрируется легко с другими библиотеками, такими как SciPy, pandas и Matplotlib, что делает ее мощным инструментом для научных вычислений. Пример использования NumPy: import numpy as np # Создаем одномерный массив arr = np.array([1, 2, 3, 4, 5]) # Выполняем операции над массивом arr_squared = arr ** 2 arr_sum = np.sum(arr) print("Исходный массив:", arr) print("Квадраты элементов:", arr_squared) print("Сумма элементов:", arr_sum) NumPy также предоставляет функции для работы с многомерными массивами, линейной алгеброй, случайными числами и многое другое. #python#NumPy#научныевычисления#анализданных