TGINSIGHT CHAT
Python Academy
@python_academy
EducaciónPython Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
Posts recientes
Pág. 19 de 85 · 1,014 posts
Библиотека для генерации рандомных данных Mimesis — это модуль, предназначенный для генерациислучайныхданных. Это особенно полезно при тестировании алгоритмов, когда требуется большойобъемданных. Использование Mimesis избавляет от необходимости создавать эти данные вручную, существенноэкономя время. Этот код сгенерирует случайные адресные данные, такие как название города, улицы, номер дома и координаты. #python#mimesis
Удаление страниц PDF-файла Библиотека PyMuPDF включает в себя довольно много сложных методов, которые упрощают удаление страниц из файла PDF. Он позволяет указать либо одну страницу (используя метод deletePage()), либо диапазон номеров страниц (используя метод deletePageRange()), либо список с номерами страниц (используя метод select()). В следующем примере показано, как использовать список для выбора страниц, которые нужно сохранить в исходном документе. Имейте в виду, что страницы, которые не указаны, не будут частью выходного документа. В нашем случае выходной документ содержит только первую, вторую и четвертую страницы. #python
Hashtags
Publicado 4 nov
Тестирование на pytest pytest — ближе по духу к Python нежели unittest, который накладывает определенные обязательства при разработке тестов. Например, создание классов-наследников от TestCase или выполнение определенной процедуры запуска тестов. При разработке на pytest ничего этого делать не нужно. Вы просто пишете функции, которые должны начинаться с "test_" и используете assert, встроенные в Python. Также он поддерживает запуск тестов на unittest и nose, то есть полная обратная совместимость с ними.
Прогресс выполнения программы Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль tqdm является простым и лаконичным вариантом. Привычный range можно заменить на trange для визуализации прогресса. А для итерации по какой-либо последовательности, достаточно просто передать её в функцию tqdm. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook. Кстати, интересный факт – название tqdm произошло от арабского слова "taqaddum" (تقدّم), которое означает "прогресс," а также это ещё и сокращение от "я тебя сильно люблю" на испанском (te quiero demasiado). #модули#tqdm
Дробные числа По умолчанию числа с плавающей точкой используют память привычным образом, то есть они хранятся в двоичном виде. Это означает, что вы обычно работаете с приблизительными значениями, а не точными. Можно использовать тип данных Decimal, который предоставит намного большую точность, но и его может не хватить в некоторых случаях. Поэтому для идеальных вычислений лучше использовать Fraction, который представляет и хранит число в виде рациональной дроби. #числа#fraction
PyAutoGUI PyAutoGUI позволяет Python управлять мышью и клавиатурой для автоматизации взаимодействия с другими приложениями. Пакет работает в Windows, macOS и Linux на Python 2 и 3. Из ключевого функционала можно выделить следующее: — Передвижение курсора и нажатие на кнопки мыши; — Набор текста, например для заполнения форм; — Скриншоты, поиск указанных изображений на экране (например, иконки) и нажатие на них; — Поиск приложения на экране, изменение размера его окна, перемещение по экрану и т. д. Основные функции показаны в примере на картинке выше, остальное — в документации проекта. #pyautogui
Hashtags
Создание скриншотов с использованием модуля pyscreenshot Модуль pyscreenshot, обеспечивая кросс-платформенную функциональность, позволяет легко создавать скриншоты как всего экрана, так и его отдельных частей. Для работы этого модуля необходимо установить библиотеку Pillow. Для захвата изображения используется метод grab, для его отображения – show, а для сохранения – save. В метод grab можно также передать аргумент bbox, чтобы ограничить захват только определенной областью экрана. Этот модуль оказывается особенно полезным, например, при логировании скриптов, использующих Selenium. Selenium может открывать браузер и выполнять различные операции в нем, и использование pyscreenshot позволяет создавать скриншоты для последующего анализа и отладки. #python#pyscreenshot
Hashtags
Publicado 31 oct
Преобразования текста в аудио с помощью Python Для преобразования текста в аудио на Python можно использовать библиотеку gTTS (Google Text-to-Speech). В данном примере мы используем текст "Привет!» на русском языке, создаем объект gTTS и сохраняем аудиофайл "hello.mp3". Затем мы воспроизводим аудиофайл с помощью утилиты mpg321.
PyJWT: Работаем с JSON Web Tokens в Python PyJWT — это библиотека Python, предназначенная для кодирования, декодирования и проверки подлинности JSON Web Tokens (JWT). JWT — это открытый стандарт (RFC 7519), который определяет компактный и независимый способ безопасной передачи информации между сторонами в виде JSON-объекта. Эта информация может быть проверена и доверена, так как она подписана цифровой подписью. В этом примере мы создаём JWT, который содержит идентификаторпользователя и срок его действия. Затем мы декодируем и проверяем токен, чтобы убедиться, что он ещё действителен и подлинен. #python#pyjwt
Publicado 30 oct
ГигаЧат получил голосовой режим. Нейросеть заговорила — отвечает голосом, различает интонации и не теряется, если её перебить. Доступно управление голосом и текстовая расшифровка после разговора. Функция запущена в бете и уже работает в веб-версии, и на Android. Можно обсуждать задачи, репетировать публичные выступления или просто поговорить. ГигаЧат остаётся универсальным инструментом: ищет, структурирует информацию, анализирует файлы, создаёт тексты, видео и музыку. Теперь — ещё и говорит.
Получаем и задаем лимит рекурсии В Python не оптимизируется хвостовая рекурсия, из-за чего зачастую возникает RecursionError во время создания рекурсивных алгоритмов. Но с помощью модуля sys можно посмотреть и даже изменить максимальную глубину рекурсии. Хотя делать это слегка опасно, так как каждый новый вызов занимает много памяти. И вообще лучше стараться использовать не рекурсию, а обычные циклы, но это вы и так сами знаете. #рекурсия#лимиты
Not a Number В модуле math есть особый объект, который называется NaN (Not a Number). Эти объекты NaN не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников. Например можно создать подобный объект, просто передав строку 'nan' во float. Кстати говоря, это значит что вы можете использовать NaN в качестве ключа в словаре (хотя мы и не советуем это делать). #nan#tips