Just Python
11.2K subscribers
3.66K photos
11 videos
3.66K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Встроенный модуль time

Встроенный модуль time позволяет проводить операции с системным временем, преобразовывать в удобную строку. Также крайне полезной функцией является time.sleep(n), которая останавливает выполнение программы на n секунд.

#modules // just python
JMESpath – это язык запросов для JSON

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

#modules // just python
Библиотека pydantic

Программисту всегда приходится задумываться над типами данных, которые он принимает. Но это рутина, занимающая кучу времени. К счастью, проверять тип на валидность можно намного удобнее с библиотекой pydantic.
С ее помощью можно не писать однотипный код и оставить все нюансы на библиотеку. И еще небольшой плюс: ее удобно отлаживать и получать значения.

#modules // Just Python
Модуль uuid

Это быстрый и простой способ сгенерировать UUID (universally unique identifier, глобально уникальный идентификатор).

#modules // just python | ChatGPT
Модуль glob

Этот модуль используется для поиска директорий для wildcards. Это означает, что его можно использовать для агрегирования данных о файлах на вашем ПК и их расширениях. glob() — это то, что нужно для выполнения поиска файлов. В ходе поиска используется синтаксис Unix, т. е. *, / и т. д.

#modules // just python | ChatGPT
Модуль re

Хватит мучиться с str.split() при обработке строк!
Модуль re используется для синтаксического анализа строк с помощью регулярных выражений и предоставляет больше возможностей для работы со строками в Python.
Модуль re предоставляет не одну, а множество крайне полезных функций. Они особенно актуальны для работы с большими объемами данных, что важно для дата-саентистов. Вот два примера, с которых стоит начать, — это функции sub() и findall().

Ещё один пример использования

#modules // just python | ChatGPT
Модуль Math

Математический модуль дает доступ ко всему, от sin и cos до логарифмов. Все это крайне важно при работе с алгоритмами, сделав математические операции доступными без зависимостей. В примере используется метод log().

#modules // just python | ChatGPT
Модуль Statistics

Модуль дает доступ к базовой статистике — не такой глубокой, как в случае SCiPy, но и ее может быть достаточно для анализа данных. Alias этого модуля — st, в некоторых случаях — stc или sts. Но, внимание — не scs, это уже alias для Scipy.stats.

#modules // just python | ChatGPT
Модуль urllib

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

#modules // just python | ChatGPT
Модуль datetime

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

#modules // just python | ChatGPT
Модуль zlib

Это универсальное решение для сжатия данных с использованием языка программирования Python. Модуль крайне полезен при работе с пакетами. Наиболее важные функции здесь — compress() and decompress().

#modules // just python | ChatGPT
Модуль эмодзи

Модуль emoji позволяет добавлять в строки эмодзи.

#modules // just python | ChatGPT
Модуль geopy

Он работает путём абстрагирования API разных сервисов геокодирования. Этот модуль даёт возможность узнать полный адрес места, его долготу и широту и даже высоту. Также в нём есть полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.

#modules // just python | ChatGPT
Модуль dis

Лучший способ узнать Python — залезть к нему под капот. Это и делает dis. Вернее, он даёт нам доступ к байт-коду.

Таким образом можно понять, каким образом Python оптимизирует код. Особенно интересно проверять с строками.

#modules // Just Python
Модуль heapq

Нас интересуют только две функции: nlargest() и nsmallest(). Они позволяют получить n самых больших/маленьких значений в iterable.

В большинстве случаев функции быстрее чем sorted(iterable)[:n]. Их использование можно заметить в Counter.most_common().

#modules // Just Python
Модуль временных зон

В PEP-615 (принятый в Python 3.9) появился новый модуль zoneinfo, который упрощает работу с временными зонами. Он обращается к ОС за информацией, если не получается, просит установить tzdata.

Раньше эту функцию выполнял сторонний пакет pytz, теперь им не стоит пользоваться.

#modules // Just Python
Асинхронные запросы с aiohttp

Модуль aiohttp представляет из себя асинхронный HTTP клиент/сервер для asyncio и Python. Он позволяет выполнять асинхронные HTTP запросы, что делает его идеальным инструментом для современных приложений, где требуется высокая производительность и параллелизм.

Установка aiohttp производится через pip. Чтобы начать делать асинхронные запросы, вам потребуется взаимодействовать с ним с помощью синтаксиса async/await. Запросы, такие как GET, POST, PUT и DELETE, оформляются чисто и ясно. Объекты ответов содержат все необходимые атрибуты для обработки ответов от сервера.

Модуль aiohttp подходит не только для работы с асинхронными веб-сервисами, но и для асинхронного скрапинга веб-страниц.

#modules // Just Python
aiohttp

Библиотека aiohttp — это асинхронный HTTP-клиент/сервер для asyncio и Python. Она поддерживает как клиентские, так и серверные веб-сокеты “из коробки” без коллбэков. Веб-сервер имеет промежуточное ПО (middlewares), сигналы и подключаемую маршрутизацию.

В этом примере создается веб-приложение с помощью aiohttp.web.Application, добавляются маршруты для обработки запросов к корневому URL-адресу (/) и URL-адресу с именем (/{name}). Функция handle обрабатывает запросы, извлекает имя из параметров запроса (или использует значение по умолчанию “Anonymous”) и возвращает ответ с текстом приветствия.

#modules // Just Python
Pydantic для проверки типов

Программисту всегда приходится задумываться над типами данных, которые он принимает. Но это рутина, занимающая кучу времени. К счастью, проверять тип на валидность можно намного удобнее с библиотекой pydantic.
С ее помощью можно не писать однотипный код и оставить все нюансы на библиотеку. И еще небольшой плюс: ее удобно отлаживать и получать значения.

#modules // Just Python
Модуль newspaper3k для работы с мета-данными

Если вы ещё с ним не встречались, то приготовьтесь к тому, что модуль newspaper снесёт вам крышу.

Он даёт возможность извлекать статьи и связанные мета-данные из множества разных источников. Можно извлечь изображения, текст и имена авторов.

В нём даже есть встроенная NLP-функциональность.

Поэтому, если вы собиралисьe использовать BeautifulSoup или другую библиотеку для вебскрапинга в своём следующем проекте, лучше сэкономьте своё время и силы и установите newspaper

#modules // Just Python