seniorpy | Unsorted

Telegram-канал seniorpy - Senior Python Developer

44765

Публикуем интересные/полезные фичи/библиотеки языка. По вопросам сотрудничества: @adv_and_pr Канал на бирже: https://telega.in/c/seniorpy

Subscribe to a channel

Senior Python Developer

Преобразования текста в аудио с помощью Python

Для преобразования текста в аудио на Python можно использовать библиотеку gTTS (Google Text-to-Speech).

В данном примере мы используем текст "Привет!» на русском языке, создаем объект gTTS и сохраняем аудиофайл "hello.mp3". Затем мы воспроизводим аудиофайл с помощью утилиты mpg321.

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

Senior Python Developer

Распознаем текст по аудио с помощью Python

Для распознавания речи в аудиофайле вам понадобится использовать библиотеку SpeechRecognition.

Вам нужно будет установить библиотеку SpeechRecognition, которую можно установить с помощью pip install SpeechRecognition. Обратите внимание, что данный код предполагает, что входной аудиофайл имеет формат WAV. Если ваш аудиофайл имеет другой формат, вам может потребоваться предварительно конвертировать его в WAV.

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

Senior Python Developer

📚 Здесь собраны все вопросы, которые могут спросить на собеседовании. Теперь можно легко получить оффер, подготовившись к самым популярным вопросам. Просто выбери своё направление:

1. Frontend / JavaScript
2. Python
3. Java
4. Тестировщик QA
5. Data Science
6. DevOps
7. C#
8. С/C++
9. Golang
10. PHP
11. Kotlin
12. Swift

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

Senior Python Developer

Змейка на Python за 8 МИНУТ | Python + pygame

Смотреть видео

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

Senior Python Developer

Получить размер словаря в Python

Эти процедуры могут быть особенно полезны при обслуживании объектов JSON через API, поскольку с их помощью можно контролировать длину и размер объектов JSON.

Функция getsizeof() принадлежит модулю sys в python, который помогает нам определить размер памяти объекта dictionary в байтах.

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

Senior Python Developer

Работаем с картинками в 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') сохранит картинку на диске.

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

Senior Python Developer

Wget

Наверняка вам не раз приходилось писать методы для какой-то специфической работы с вебом. Но я вас огорчу – вы делали это зря. Ведь уже есть wget. Рекурсивно скачать сайт? Забрать со страницы все изображения? Для wget это не проблема.

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

Senior Python Developer

Поворачиваем изображение на 45 градусов

В следующем примере мы повернем изображение на 45 градусов против часовой стрелки.

Ознакомиться подробнее можно здесь.

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

Senior Python Developer

Изменение размера изображения

В следующем примере мы увидим, как можно изменить размер изображения с помощью cv2.resize(), сохранив при этом соотношение сторон. Мы изменим размер изображения до 50% от его фактической формы, т.е. уменьшим его высоту до 50% от оригинала и ширину до 50% от оригинала.

Ознакомиться подробнее можно здесь.

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

Senior Python Developer

Delorean

Delorean — отличная библиотека для работы с датами и временем. Работа с временем с помощью неё в Python мне кажется наиболее естественной. Так же стоит отметить отличную документацию и бесчисленное количество отсылок к «Назад в будущее».

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

Senior Python Developer

help()

Функция help() предоставляет простой способ получения доступа к документации Python без интернета для любой функции, ключевого слова или модуля.

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

Senior Python Developer

🧬 Телеграм-канал Яндекса для бэкендеров

В одном телеграм-канале собираем всё, что нужно знать про бэкенд-разработку в Яндексе. Делимся самыми свежими новостями о новых технологиях, подходах и фичах. Расскажем, как устроены наши сервисы изнутри и как мы справляемся с катастрофически большими объёмами данных.

Подписывайтесь🔡💬 @Yandex4Backend

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

Senior Python Developer

Библиотека mutagen

Данная библиотека позволяет извлекать всю основную информацию об аудиофайле, например, длину, битрейт, исполнителя и другие дополнительные теги. Для того, чтобы установить mutagen достаточно выполнить команду pip install mutagen.

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

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

Senior Python Developer

Рисуем шахматную доску

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

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

Senior Python Developer

Сокращение ссылок

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

Создать такую ссылку можно всего за три строчки кода, при помощи использования библиотеки PyShorteners. Вам нужно установить библиотеку в проект, выполнить её подключение, а также создать объект на её основе.

Устfновка библиотеки - pip install pyshorteners.

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

Senior Python Developer

🔥Тесты для подготовки к собеседованию🔥
Выбери своё направление:

1. Frontend
2. Python
3. Java
4. Тестировщик QA
5. Data Science
6. DevOps
7. C#
8. С/C++
9. Golang
10. PHP
11. Kotlin
12. Swift

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

Senior Python Developer

Объединение элементов списка и кортежа

Для объединения списка и кортежа в Python можно использовать оператор распаковки *.

В этом примере мы использовали оператор распаковки для объединения элементов списка my_list и кортежа my_tuple в один список new_list. Оператор * превращает итерируемый объект в последовательность аргументов, которые можно передать в другую функцию или структуру данных.

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

Senior Python Developer

«Карманный синоптик за час». Пишем Telegram-бота для мониторинга погоды на Python

Смотреть статью

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

Senior Python Developer

6–9 июля проводим Weekend Offer Analytics

Устроиться в Яндекс за выходные — реально. Ищем крутых аналитиков с опытом работы от 2 лет на Python или C++, готовых работать в офисном или гибридном режиме на территории России или Республики Беларусь.

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

Узнать подробности и зарегистрироваться.

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

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

Senior Python Developer

99 вопросов с ответами, которые должен знать Python-разработчик

Смотреть статью

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

Senior Python Developer

Цикл событий в Python

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

Поговорим теперь о низкоуровневых методах:

get_running_loop — Возвращает текущий цикл событий в потоке. Если его нет, то будет RuntimeError. Может быть вызвана только с корутины или функции обратного вызова.

get_event_loop — Делает тоже самое что и функция выше, но если set_event_loop не был вызван, то в добавок ещё закрепит новый цикл.

new_event_loop — Создает новый цикл событий.

set_event_loop — Устанавливает цикл событий для текущего потока.

Немного о методах для работы с циклами событий:

run_forever — Запускает цикл событий до тех пока stop не будет вызван.

stop — Останавливает цикл событий.

Также есть методы is_closed и is_running для проверки состояния.

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

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

Senior Python Developer

Удаление страниц PDF-файла

Библиотека PyMuPDF включает в себя довольно много сложных методов, которые упрощают удаление страниц из файла PDF. Он позволяет указать либо одну страницу (используя метод deletePage()), либо диапазон номеров страниц (используя метод deletePageRange()), либо список с номерами страниц (используя метод select()).

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

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

Senior Python Developer

Хотите узнать, как работает логистическая платформа в Яндекс Маркете? 🔥

В новом выпуске подкаста I like techno от Яндекса герои обсудили, как устроена платформа сейчас и как она менялась за последние 10 лет.

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

Спикеры — спецы, погруженные в тему:
👉 Слава Цыкин, СТО логистической платформы
👉 Рома Кульчицкий, руководитель службы стабильности и инфраструктуры
👉 Андрей Захрямин, руководитель команды разработки инфраструктуры Логистики
👉 Кирилл Дмитриев, руководитель службы разработки складских систем и систем учёта

Слушать на Яндекс Музыке
Смотреть на Youtube

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

Senior Python Developer

Друзья! Приглашаем на курс «Python для Пентестера»

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

ВЫ ИЗУЧИТЕ:
- Фундамент языка Python и объектно-ориентированное программирование 
- Работу с сетью, MySQL базами данных и FTP-серверами
- Парсинг и фаззинг 
- Создание интерактивного софта
- Основы криптографии и работу с шифрами

🏆 Сертификат / удостоверение о повышении квалификации 
🏆 Трудоустройство / стажировка

Учитесь у лучших!

Пишите нам @Codeby_Academy
или звоните +74994441750

Подробнее о курсе 

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

Senior Python Developer

JmesPath

Работать с JSON в Python — сплошное удовольствие, ведь он прекрасно отображается в Python-словаре. Кроме того, Python поставляется с собственной библиотекой для создания и анализа, или разбора, JSON. Для меня это одна из лучших функций в Python. Если мне нужно поработать с JSON, то я непременно выберу Python.

Но в стандартном пакете есть и кое-что, чего вам может не хватать. Если вы пользуетесь json.loads(), а данные из словаря получаете вручную (возможно, добавляя какие-то циклы), то готовьтесь сильно удивиться!

JMESPath (читается как «JAMES PATH») делает работу с JSON на Python еще проще. Теперь вы можете декларативно указывать, как извлекать элементы из JSON-документа. Вот несколько примеров, иллюстрирующих возможности JMESPath.

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

Senior Python Developer

Превращаем PDF в текст

Думаю, все периодические работают с PDF-документами. И зачастую это ручная и скучная работа. Но Python может автоматизировать даже такую рутинную задачу.

Модуль pdftotext создан именно для работы с документами в PDF формате. Устанавливается он через пакетный менеджер pip, а использовать его проще простого. Все основные операции представлены на картинке выше.

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

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

Senior Python Developer

Библиотека mimesis

Часто для проверки работы алгоритмов нужно собрать достаточно данных, чтобы на них тестировать. Создание данных вручную занимает очень много времени, для избавления от этой рутины может помочь модуль mimesis, который умеет генерировать рандомные данные по нескольким критериям. Устанавливается он просто выполнив: pip install mimesis.

В примере выше мы генерируем адресные данные.

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

Senior Python Developer

Группа с бесплатными, простыми и понятными материалами по программированию /channel/LAF_hack (Python)

А для тех, кому комфортнее обучаться под руководством опытных педагогов  - У нас есть Курс

* 3 пробных занятия - попробуй и решись
* Дешево и по делу (по сравнению со всеми известными онлайн школами)
* Изучаем язык Python
* Темы в правильной последовательности,  из-за чего у Вас не будет диссонанса в процессе обучения.
* Занятия проходят онлайн 1 раз в неделю вечером в выходной длительность ~2 часа
* Записи занятий ведутся. Вы можете проходить курс в своем темпе.
* Домашняя работа проверяется, комментируется и оценивается.
* Сложные вещи мы объясняем на простых примерах.
* Каждое занятие состоит из лекционной и практической части.
* Сильная сторона курса – вовлеченность педагогов, при этом каждый работает в том направлении, про которое рассказывает.
* Перманентный доступ к обновляющимся материалам оплаченного курса.

Вступай в группу /channel/LAF_hack

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

Senior Python Developer

Друзья! Приглашаем на курс «Python для Пентестера»

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

ВЫ ИЗУЧИТЕ:
- Фундамент языка Python и объектно-ориентированное программирование 
- Работу с сетью, MySQL базами данных и FTP-серверами
- Парсинг и фаззинг 
- Создание интерактивного софта
- Основы криптографии и работу с шифрами

🏆 Сертификат / удостоверение о повышении квалификации 
🏆 Трудоустройство / стажировка

Учитесь у лучших!

Пишите нам @Codeby_Academy
или звоните +74994441750

Подробнее о курсе → здесь

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

Senior Python Developer

Сортировка выборкой

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

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

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

По мере увеличения значения i нужно проверять меньше элементов.

Время сортировки
Затраты времени на сортировку выборкой в среднем составляют O(n²), где n — количество элементов списка.

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