⚡️ Модуль requests
requests — это библиотека для создания HTTP запросов. Установить её можно с помощью этой команды:
requests.get() — создаёт GET запрос на сервер. Чаще всего, это запрос страницы от пользователя.
Необязательный параметр params принимает список параметров, которые мы видим в ссылке после "?".
requests. post() — (без пробела после точки) создаёт POST запрос на сервер. Это какие-либо данные, поступающие от пользователя.
Необязательный параметр data здесь позволяет настроить, какие данные нужно отправлять на сервер.
requests — это библиотека для создания HTTP запросов. Установить её можно с помощью этой команды:
pip install requests
Возможности requests настолько велики, что на ней можно написать даже свой браузер или бота. Пройдёмся по некоторым командам:requests.get() — создаёт GET запрос на сервер. Чаще всего, это запрос страницы от пользователя.
Необязательный параметр params принимает список параметров, которые мы видим в ссылке после "?".
requests. post() — (без пробела после точки) создаёт POST запрос на сервер. Это какие-либо данные, поступающие от пользователя.
Необязательный параметр data здесь позволяет настроить, какие данные нужно отправлять на сервер.
⚡️ Модуль string
Это — интегрированная библиотека для работы со строками, которая содержит в себе полезные данные и классы.
ascii_letters — все ascii буквы, включая большие и маленькие. Состоит из ascii_lowercase и ascii_uppercase.
printable — Все символы, которые считаются пригодными для печати. Комбиннация digits, ascii_letters, punctuation, whitespace
whitespace — символы, которые считаются нечитаемыми (пробел, табуляция, перенос на новую строку и так далее)
string.Formatter — класс для форматирования строки. Например, подстановка значений или их ограничение.
format(string, *args, *kwargs) — метод для постановки значений в строку. Он вызывает vformat(string, args, kwargs), который используется чтобы напрямую передать словарь или список без его упаковки.
Это — интегрированная библиотека для работы со строками, которая содержит в себе полезные данные и классы.
ascii_letters — все ascii буквы, включая большие и маленькие. Состоит из ascii_lowercase и ascii_uppercase.
printable — Все символы, которые считаются пригодными для печати. Комбиннация digits, ascii_letters, punctuation, whitespace
whitespace — символы, которые считаются нечитаемыми (пробел, табуляция, перенос на новую строку и так далее)
string.Formatter — класс для форматирования строки. Например, подстановка значений или их ограничение.
format(string, *args, *kwargs) — метод для постановки значений в строку. Он вызывает vformat(string, args, kwargs), который используется чтобы напрямую передать словарь или список без его упаковки.
⚡️ Форматирование с помощью %
Конечно, вариант с format — лучше и проще, но часто встречается и такой способ форматирования.
%d, %s, %f — после символа процента обычно пишут тип передаваемого объекта. В данном случае, оператор % принимает кортеж.
Самые часто используемые типы — это %d (целое число), %s (строка в нормальном для человека восприятии) и %f (число с плавающей точкой float).
%(value)s, %(value)d — Получает значение из словаря. индекс передан внутри скобочек, а после идёт тип как выше.
Конечно, вариант с format — лучше и проще, но часто встречается и такой способ форматирования.
%d, %s, %f — после символа процента обычно пишут тип передаваемого объекта. В данном случае, оператор % принимает кортеж.
Самые часто используемые типы — это %d (целое число), %s (строка в нормальном для человека восприятии) и %f (число с плавающей точкой float).
%(value)s, %(value)d — Получает значение из словаря. индекс передан внутри скобочек, а после идёт тип как выше.
⚡️ Как работать с zip архивами?
zipfile — это модуль, позволяющий работать с архивами расширения .zip. Он уже установлен в python и для работы с ним достаточно просто импортировать библиотеку.
ZipFile(file, mode) — конструктор класса. Он принимает путь к архиву для работы с ним и режим (r - чтение, w - запись, по умолчанию - r).
ZipFile . open(file) — открывает файл внутри архива. Вы можете работать с ним как и с обычными файлами.
ZipFile.extract(file) — разархивирует файл в открытую директорию. Для получения всех файлов используйте extractall().
ZipFile.getinfo(file) —возвращает класс ZipInfo с информацией об файле с путём file.
zipfile — это модуль, позволяющий работать с архивами расширения .zip. Он уже установлен в python и для работы с ним достаточно просто импортировать библиотеку.
ZipFile(file, mode) — конструктор класса. Он принимает путь к архиву для работы с ним и режим (r - чтение, w - запись, по умолчанию - r).
ZipFile . open(file) — открывает файл внутри архива. Вы можете работать с ним как и с обычными файлами.
ZipFile.extract(file) — разархивирует файл в открытую директорию. Для получения всех файлов используйте extractall().
ZipFile.getinfo(file) —возвращает класс ZipInfo с информацией об файле с путём file.
⚡️ Форматирование строк с помощью format
В отличие от %, format озвоялет красиво вставить в строку значения или функции, но у него есть свой синтаксис.
Остановимся на нём подробнее:
{} — на месте этих скобочек будут находится аргументы, переданные в format, внутри которых могут быть некоторые настройки
{0}, {1}, {2} — берутся значения из *args с индесом внутри фигурных скобок.
{index}, {score} — из списка **kwargs вставляются на места фигурных скобок.
В отличие от %, format озвоялет красиво вставить в строку значения или функции, но у него есть свой синтаксис.
Остановимся на нём подробнее:
{} — на месте этих скобочек будут находится аргументы, переданные в format, внутри которых могут быть некоторые настройки
{0}, {1}, {2} — берутся значения из *args с индесом внутри фигурных скобок.
{index}, {score} — из списка **kwargs вставляются на места фигурных скобок.
⚡️ Оператор Yield
Этот оператор при каждом своём вызове возвращает объект. Он ведёт себя также, как и итератор.
yield — ключевое слово, которое не уничтожает локальные переменны и позволяет вернуть несколько значений.
yield from — инструкция, которая позволяет вкладывать один итератор/генератор в другой. Он позволяет легко заменить for внутри.
next() — функция, позволяющая извлекать следующий объект из итератора. Цикл for работает на этой функции и вызывает её, пока не получит исключение StopItered.
Этот оператор при каждом своём вызове возвращает объект. Он ведёт себя также, как и итератор.
yield — ключевое слово, которое не уничтожает локальные переменны и позволяет вернуть несколько значений.
yield from — инструкция, которая позволяет вкладывать один итератор/генератор в другой. Он позволяет легко заменить for внутри.
next() — функция, позволяющая извлекать следующий объект из итератора. Цикл for работает на этой функции и вызывает её, пока не получит исключение StopItered.
⚡️ Библиотека Rich
Это — библиотека, позволяющая приукрасить вывод в консоле. Она имеет намного больше функционала, чем ранее упомянутая Colorama.
Установить модуль можно с помощью команды:
Пример со всеми возможностями модуля можно посмотреть с помощью команды:
Это — библиотека, позволяющая приукрасить вывод в консоле. Она имеет намного больше функционала, чем ранее упомянутая Colorama.
Установить модуль можно с помощью команды:
pip install rich
Библиотека помогает работать с цветами, стилями и даже позиционированием текста. Она поддерживает множество языков, Markup и Emoji. Также в ней есть таблицы, синтаксическая подсветка и красивый вывод.Пример со всеми возможностями модуля можно посмотреть с помощью команды:
python3 -m rich
⚡️ Модуль Faker
faker — это модуль для создания фейковых данных (имя, адрес или любой другой текст). Он отлично подойдёт для тестирования вашей программы.
Скачать его можно с помощью:
Faker() — основной класс. Он принимает необязательный аргумент — строку локализации или их список.
Faker . name() — (без точек) фальшивое имя. Создаётся на основе переданной локализации.
Faker.address() — Фальшивый адрес. Формат также задаётся локализацией.
Также, можно создать фальшивый ip-адрес, место работы и подобные данные, используя Providers
faker — это модуль для создания фейковых данных (имя, адрес или любой другой текст). Он отлично подойдёт для тестирования вашей программы.
Скачать его можно с помощью:
pip install FakerТеперь пройдёмся по его командам:
Faker() — основной класс. Он принимает необязательный аргумент — строку локализации или их список.
Faker . name() — (без точек) фальшивое имя. Создаётся на основе переданной локализации.
Faker.address() — Фальшивый адрес. Формат также задаётся локализацией.
Также, можно создать фальшивый ip-адрес, место работы и подобные данные, используя Providers
⚡ Итераторы — это что?
Итератор — это объект, который помогает обходить ту или иную последовательность.
Знаю, ничего не понятно. Приведу пример:
У вас есть тележка с камнями, а вам необходимо перенести их в другую тележку.
Вы можете просто взять эти несколько камней в руки и перенести их. Это и быстрее, и эффективнее, но что делать, если камней больше? 5, 20, 50?
Очевидно, что тогда легче будет таскать их по одному.
В таком случае, вы выступаете итератором, перетаскивая камни, которые необходимы только в данный момент.
Камни — это некий набор чисел, руки — оперативная память, а вы — посредник (итератор).
Итератор — это объект, который помогает обходить ту или иную последовательность.
Знаю, ничего не понятно. Приведу пример:
У вас есть тележка с камнями, а вам необходимо перенести их в другую тележку.
Вы можете просто взять эти несколько камней в руки и перенести их. Это и быстрее, и эффективнее, но что делать, если камней больше? 5, 20, 50?
Очевидно, что тогда легче будет таскать их по одному.
В таком случае, вы выступаете итератором, перетаскивая камни, которые необходимы только в данный момент.
Камни — это некий набор чисел, руки — оперативная память, а вы — посредник (итератор).
⚡ Библиотека dash
Dash — это веб-фреймворк для работы с дашбордами и графиками. Он представляет из себя связку react.js, CSS, HTML и даже Flask.
Для установки введите все эти команды поочерёдно:
Из dash_core_components можно импортировать различные динамические формы, например, выпадающие списки.
А из dash_html_components берутся разные элементы html, такие как div, h1 и т.д.
Также dash содержит фичу, именуемую «hot-reloading». То есть, вам не придётся перезапускать сервер при каждом изменении.
Dash — это веб-фреймворк для работы с дашбордами и графиками. Он представляет из себя связку react.js, CSS, HTML и даже Flask.
Для установки введите все эти команды поочерёдно:
pip install dash
pip install dash-html-components
pip install dash-core-components
pip install dash-table
Из dash_core_components можно импортировать различные динамические формы, например, выпадающие списки.
А из dash_html_components берутся разные элементы html, такие как div, h1 и т.д.
Также dash содержит фичу, именуемую «hot-reloading». То есть, вам не придётся перезапускать сервер при каждом изменении.
⚡️ Модуль funcy
funcy — это набор полезных функций, помогающие с работой в python. Скачать его можно по команде:
merge(*args) — Соединяет все аргументы в один элемент. Работает со списками, словарями, кортежами, множествами и даже строками.
walk (func, obj) — Проходит по всем элементам внутри obj и выполняет func с элементом. Очень похоже на map, но сохраняет возвращаемый тип.
select (func/re, obj) — Проходит по всем элементам и вызывает func, использующийся для сортировки. Также принимает регулярные выражения на месте re.
funcy — это набор полезных функций, помогающие с работой в python. Скачать его можно по команде:
pip install funcy
Вот несколько полезных функций из этого набора:merge(*args) — Соединяет все аргументы в один элемент. Работает со списками, словарями, кортежами, множествами и даже строками.
walk (func, obj) — Проходит по всем элементам внутри obj и выполняет func с элементом. Очень похоже на map, но сохраняет возвращаемый тип.
select (func/re, obj) — Проходит по всем элементам и вызывает func, использующийся для сортировки. Также принимает регулярные выражения на месте re.
⚡️ Модуль pympler
Наверное, много кому было интересно, насколько его приложение оптимизированное и что ещё можно улучшить.
В этом поможет библиотека под названием pympler: она может и отслеживать, и анализировать использование памяти разными объектами.
Скачивается она с помощью этой команды:
Кроме того, с его помощью можно анализировать использование памяти в django, что может быть полезно при подборе сервера для сайта.
Наверное, много кому было интересно, насколько его приложение оптимизированное и что ещё можно улучшить.
В этом поможет библиотека под названием pympler: она может и отслеживать, и анализировать использование памяти разными объектами.
Скачивается она с помощью этой команды:
pip install pymplerВ этот модуль заложен довольно большой функционал. Он позволяет, помимо обычного просмотра размера объектов, отслеживать утечки памяти, а также следить за использованием классов.
Кроме того, с его помощью можно анализировать использование памяти в django, что может быть полезно при подборе сервера для сайта.
⚡️ Тестирование и модуль pytest
Автоматическое тестирование — это проверка приложения на все возможные баги не человеком, а заранее написанным для этого кодом.
Оно позволяет при изменении какой-либо части кода проверить, не появились ли ошибки в остальных.
В этом нам поможет pytest. Скачать этот модуль можно с помощью команды:
Автоматическое тестирование — это проверка приложения на все возможные баги не человеком, а заранее написанным для этого кодом.
Оно позволяет при изменении какой-либо части кода проверить, не появились ли ошибки в остальных.
В этом нам поможет pytest. Скачать этот модуль можно с помощью команды:
pip install pytest
Более подробную документацию понятным (английским) языком о модуле можно найти на этом сайте.stribny.name
Testing Python Applications with Pytest
A complete guide to testing Python applications with Pytest, pytest plugins and other test libraries.
⚡️ Модуль Matplotlib
Matplotlib — это модуль для визуализации данных. Он имеет довольно большой функционал, различные способы вывода и даже графики.
Скачать его можно с помощью:
От одного просто графика до нескольких с разными градиентами, круговыми диаграммами, 3D-визуализацией и т.д. Более подробно расписано на официальном сайте.
Также он поддерживает несколько способов отображения данных, но вам потребуется скачать дополнительные библиотеки.
Кроме того, им поддерживается вывод в svg файл, в веб браузер, GTK3 и в приложение. Более подробно можно просмотреть введя команду matplotlib.use('?').
Matplotlib — это модуль для визуализации данных. Он имеет довольно большой функционал, различные способы вывода и даже графики.
Скачать его можно с помощью:
pip install -U matplotlibЭтот модуль очень легко конфигурируется, что позволяет ему отображать данные самыми разными способами.
От одного просто графика до нескольких с разными градиентами, круговыми диаграммами, 3D-визуализацией и т.д. Более подробно расписано на официальном сайте.
Также он поддерживает несколько способов отображения данных, но вам потребуется скачать дополнительные библиотеки.
Кроме того, им поддерживается вывод в svg файл, в веб браузер, GTK3 и в приложение. Более подробно можно просмотреть введя команду matplotlib.use('?').
⚡️ Модуль TensorFlow
TensorFlow — это библиотека, разработанная Google для глубокого обучения нейронных сетей. Она с открытым исходным кодом, и если вы научитесь его разбирать, вы значительно улучшите свои навыки.
Изначально все вычисления представлены в виде графов, однако расчёт выполняется по запросу, что позволяет повысить производительность при высокой нагрузке.
Также библиотека может распределять вычисления между центральным и графическим процессором и несколькими системами одновременно, что также очень хорошо для скорости обучения.
Помимо всего этого, TensorFlow довольно популярный, что позволяет легко его изучить с помощью других материалов.
TensorFlow — это библиотека, разработанная Google для глубокого обучения нейронных сетей. Она с открытым исходным кодом, и если вы научитесь его разбирать, вы значительно улучшите свои навыки.
Изначально все вычисления представлены в виде графов, однако расчёт выполняется по запросу, что позволяет повысить производительность при высокой нагрузке.
Также библиотека может распределять вычисления между центральным и графическим процессором и несколькими системами одновременно, что также очень хорошо для скорости обучения.
Помимо всего этого, TensorFlow довольно популярный, что позволяет легко его изучить с помощью других материалов.
Какого контента не хватает каналу?
Anonymous Poll
60%
Интересные уроки / кейсы
28%
Подборки видео на заданную тему
37%
Тесты / задачи
15%
Юмор / мемчики
23%
Книги
#gtts #мини_урок
Преобразовываем текст в речь
Есть разные интерфейсы API для преобразования текста в речь. Воспользуемся одним из самых популярных - Google Text to Speech, широко известный как gTTS API.
Библиотека поддерживает различные языки (русского к сожалению нет). С gTTS можно работать в консоли с помощью gtts-cli. Команда считывает текст, делает нужный запрос и записывает результат в файл.
Устанавливаем:
Настраиваем: документация
Кому мало gTTS, потестируйте модуль google-cloud-texttospeech. Он имеет гораздо больший функционал, например он может сделать паузу в нужном вам месте.
Кто ещё какими Text to Speech модулями пользуется? Пишите в комментариях. Да, да, да у нас появились комментарии 👇👇👇
Преобразовываем текст в речь
Есть разные интерфейсы API для преобразования текста в речь. Воспользуемся одним из самых популярных - Google Text to Speech, широко известный как gTTS API.
Библиотека поддерживает различные языки (русского к сожалению нет). С gTTS можно работать в консоли с помощью gtts-cli. Команда считывает текст, делает нужный запрос и записывает результат в файл.
Устанавливаем:
pip install gTTS
Настраиваем: документация
Кому мало gTTS, потестируйте модуль google-cloud-texttospeech. Он имеет гораздо больший функционал, например он может сделать паузу в нужном вам месте.
Кто ещё какими Text to Speech модулями пользуется? Пишите в комментариях. Да, да, да у нас появились комментарии 👇👇👇
⚡️ Редактируем видео с помощью Python
#миниурок #moviepy
В этом нам поможет библиотека moviepy — она позволяет склеивать, обрезать и даже накладывать эффекты на видео.
Код у библиотеки довольно простой. На примере выше мы обрезаем клип, потом склеиваем с другим видео, после изменяем размер.
Далее — записываем всю нашу работу в файл, используя несколько потоков.
Стоит обратить внимание, что модуль обрабатывает всё на CPU и, если ваших ресурсов не хватает, стоит воспользоваться выделенными серверами (к примеру, amazon или google) с большей производительностью.
Также, эта библиотека отлично подойдёт для выполнения простых, но повторяющихся операций.
#миниурок #moviepy
В этом нам поможет библиотека moviepy — она позволяет склеивать, обрезать и даже накладывать эффекты на видео.
Код у библиотеки довольно простой. На примере выше мы обрезаем клип, потом склеиваем с другим видео, после изменяем размер.
Далее — записываем всю нашу работу в файл, используя несколько потоков.
Стоит обратить внимание, что модуль обрабатывает всё на CPU и, если ваших ресурсов не хватает, стоит воспользоваться выделенными серверами (к примеру, amazon или google) с большей производительностью.
Также, эта библиотека отлично подойдёт для выполнения простых, но повторяющихся операций.