3.73K subscribers
478 photos
29 videos
35 files
343 links
Здесь есть всё, чтобы упростить вам изучение Python.
Download Telegram
howdoi

Застряли на какой-то проблеме с кодом и не можете вспомнить нужное решение? Хотите зайти в StackOverflow, но не хотите выходить из терминала?

Тогда вам точно пригодится вот этот инструмент для командной строки.

Задайте ему любой вопрос, и он постарается выдать нужный ответ.
Делаем HTTP запросы

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

Устанавливается requests стандартным путем через пакетный менеджер pip. Запросы GET, POST, PUT и DELETE делаются интуитивно понятно. Атрибуты у объекта Response позволяют получить всю информацию об ответе от сервера.

Модуль идеально подходит как для работы со внешними API веб-сервисов, так и для получения HTML кода веб-страниц.
Редактор видео

Все еще в поиске крутого видео редактора? Зачем что-то искать, когда есть Python и замечательная библиотека MoviePy :)

За счет MoviePy вы можете перевернуть видео, можете его обрезать, можете изменить количество FPS и можете выполнить ещё много других действий.

Мы создадим программу, что будет принимать видео и отделять от него звук, который будем сохранять в качестве отдельного файла.
Python как сделать красивую программу под ПК за 10 минут.

Лёгкий способ делать ПК программы на Python с красивым интерфейсом и работающие одновременно на Windows, Mac и Linux.

Смотреть это видео на youtube:
https://youtu.be/Gon0MvppfF8
Ускоряем код с помощью векторизации

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

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

По сути, vectorize преобразует функцию таким образом, что она начинает принимать весь вектор целиком, а не отдельный его элемент. Надо помнить, что такой подход не всегда приводит к значительному ускорению.
Что выведет код?
Anonymous Quiz
47%
0 1
16%
1 3
10%
3 1
28%
None
Работаем с картинками в 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') сохранит картинку на диске.

Больше официальных примеров и документацию можно посмотреть тут.

Пример можно посмотреть тут.
Распознание лиц на Python | Определение возраста, эмоций и расы по фотографии лица.

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

Смотреть это видео на youtube:
https://youtu.be/qRCiZPiBgaE
Выключение компьютера

Если надоело выключать компьютер привычным способом, то можно создать программу на Питон. При чём для её реализации вам потребуется лишь использовать встроенную библиотеку os.
Заменяем часть строки

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

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

Также есть третий, опциональный, аргумент, который отвечает за то, сколько раз вы хотите заменить старую подстроку на новую. По умолчанию, все вхождения заменяются.
Какой словарь задан верно?
Anonymous Quiz
36%
dict1
18%
dict2
12%
dict3
34%
Никакой
Работаем с zip архивами

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

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

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

Вы можете использовать slice-нотацию, чтобы перевернуть строку или список. При отрицательном значении шага, элементы меняются местами
Топ 5 лучших графических фреймворков Python (GUI)

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

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

Смотреть это видео на youtube: youtu.be/tT2ikZDvH1k
Что выведет код?
Anonymous Quiz
52%
1
10%
0
22%
None
17%
Error
Скачиваем вебсайты целиком

Максимально простой, но при этом мощный пакет pywebcopy поможет вам клонировать отдельные веб-страницы или даже целые сайты.

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

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

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