Python | Программирование
9.67K subscribers
2.02K photos
3 videos
138 files
1.73K links
Python без границ для всех

Владелец, реклама @Ak_Mihail

Преобрести рекламное размещение: https://telega.in/c/Python_libr
加入频道
📌 Модуль dataclasses в Python, создание типов данных

• Модуль dataclasses предоставляет декоратор и функции для автоматического добавления сгенерированных специальных методов, таких как init() и repr(), в определяемые пользователем классы.

• Атрибуты класса - переменные для использования в этих сгенерированных методах определяются с использованием аннотаций типов.

Пример (код на картинке).

📕 Документация

#урок
6👍1
📌 Модуль http.cookiejar в Python.

• Модуль http.cookiejar определяет классы для автоматической обработки файлов cookie. Модуль будет полезен для доступа к веб-сайтам, для которых требуются установка файлов cookie на клиентском компьютере посредством HTTP-ответа от веб-сервера, а затем возвращены на сервер в последующих HTTP-запросах.

• Обрабатываются как обычный протокол cookie Netscape, так и протокол, определенный в RFC 2965. Обработка RFC 2965 по умолчанию отключена. Файлы cookie RFC 2109 анализируются как файлы cookie Netscape и впоследствии обрабатываются как файлы cookie Netscape или RFC 2965 в соответствии с действующей политикой.

В примере показано наиболее частое использование http.cookiejar (код на картинке).

📕 Документация

#урок
6🔥2
📌 Модуль http.client в Python

• Модуль http.client определяет классы, реализующие клиентскую сторону протоколов HTTP и HTTPS.

• Обычно этот модуль не используется напрямую - его использует модуль urllib.request для обработки URL-адресов, использующих HTTP и HTTPS.

Пример GET-запроса при помощи модуля http.client (код на картинке).

📕 Документация

#урок
6🔥3
📌 Модуль urllib.request в Python

• Модуль urllib.request определяет функции и классы, которые помогают открывать URL-адреса (в основном HTTP), имеет базовую и дайджест-аутентификацию, перенаправления, файлы cookie и многое другое.

• Модуль urllib.request предлагает очень простой интерфейс в виде функции urllib.request.urlopen(), что позволяет получать URL-адреса с использованием множества различных протоколов. Также этот модуль предлагает немного более сложный интерфейс для обработки обычных ситуаций, таких как базовая аутентификация, файлы cookie, прокси и т. д. Они предоставляются объектами, называемыми обработчиками и "открывателями".

Самый простой способ использовать модуль urllib.request следующий (код на картинке).

📕 Документация

#урок
8👍3
📌 Модуль typing в Python, аннотации типов.

• Интерпретатор Python не проверяет и не принимает во внимание аннотации типов функций и переменных. Их могут использовать сторонние инструменты, такие как средства проверки типов, IDE, линтеры и т. д.

• Модуль typing обеспечивает поддержку выполнения аннотации типов. Наиболее фундаментальная поддержка состоит из типов typing.Any, typing.Union, typing.Tuple, typing.Callable, typing.TypeVar и typing.Generic.

Функция принимает и возвращает строку и аннотируется следующим образом (код на картинке).

📕 Документация

#урок
7🔥2
📌 Модуль http.server в Python

• Модуль http.server определяет классы для реализации HTTP-серверов (веб-серверов).

• Предупреждение модуль http.server не рекомендуется для использования в продакшне, так как он выполняет только базовые проверки безопасности.

• Класс http.server.HTTPServer, является подклассом socketserver.TCPServer(). Он создает и прослушивает HTTP-сокет, отправляя запросы обработчику.

Код для создания и запуска сервера выглядит так (код на картинке).

📕 Документация

#урок
5👍3
📌 Модуль bisect в Python, вставка в отсортированный список

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

• Модуль называется "bisect", потому что он использует базовый алгоритм деления пополам для выполнения своей работы. Исходный код может быть наиболее полезным в качестве рабочего примера алгоритма.

Пример использования модуля bisect (код на картинке).

📕 Документация

#урок
4🔥2
📌 Модуль zipimport в Python, импорт ZIP-архива.

• Модуль zipimport добавляет возможность импорта модулей Python (.py, .pyc) и пакетов из архивов формата ZIP. Обычно явно не требуется использовать модуль zipimport, он автоматически используется встроенным механизмом импорта для элементов sys.path, которые являются путями к архивам ZIP.

• Обычно sys.path представляет собой список имен каталогов в виде строк. Этот модуль также добавляет возможность sys.path использовать строки, обозначающие ZIP-архив. ZIP-архив может содержать структуру подкаталогов для поддержки импорта пакетов, а путь в архиве может быть указан только для импорта из подкаталога. Например, путь example.zip/lib/ будет импортироваться только из подкаталога lib/ в архиве.

Вот пример импорта модуля из ZIP-архива. Обратите внимание, что модуль zipimport не используется явно (код на картинке).

📕 Документация

#урок
6👍3
📌 Модуль mmap в Python, ускорение операций ввода-вывода

• Модуль mmap обеспечивает ввод и вывод файла с отображением памяти (I/O), что позволяет использовать функциональные возможности операционной системы более низкого уровня для чтения файлов. Такое поведение может значительно улучшить производительность кода, требующего большого количества файловых операций ввода-вывода.

Производительность mmap на примере чтения файла (код на картинке).

📕 Документация

#урок
6🔥3