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

Ссылка: @Portal_v_IT

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

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

РКН: clck.ru/3MnbSc
Download Telegram
Перегонка кортежа в словарь

Допустим, у нас есть кортеж, где каждое значение – строка из двух символов.

Если «навесить» функцию dict(), то в результате мы получим словарь с разделенными на ключ – значение парами.

#theory // Just Python
DottedDict

DottedDict — это класс в Python, который позволяет обращаться к элементам словаря с помощью точечной нотации. Это может быть удобно, если у вас есть сложные словари с вложенными структурами данных.

#theory // Just Python
Typeshed

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

#theory // Just Python
Pylint

Pylint — это инструмент статического анализа кода для Python

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

Pylint может найти места, где код можно оптимизировать для повышения производительности.

#theory // Just Python
SortedContainers

SortedContainers — это библиотека Apache2, написанная на чистом Python, которая содержит отсортированные коллекции. Она обеспечивает высокую производительность, сравнимую с C-расширениями.

#theory // Just Python
Uvicorn

Uvicorn — это высокопроизводительный ASGI веб-сервер для Python. Он используется для разработки и развертывания приложений Python, построенных на ASGI-совместимых фреймворках, таких как FastAPI, Starlette, Quart и Django Channels.

#theory // Just Python
Метод remove()

Метод remove() удаляет указанный элемент из множества и обновляет множество. Он не возвращает никакого значения. Если элемент, переданный в remove(), не существует, генерируется исключение KeyError.

#theory // Just Python
MySQL: RIGHT JOIN

RIGHT JOIN используется для объединения строк из двух таблиц на основе условия, где все строки из правой таблицы и соответствующие строки из левой таблицы возвращаются. Если нет соответствующих строк в левой таблице, то NULL значения заполняются в столбцах левой таблицы. В этом примере, все строки из таблицы Customers будут возвращены, а соответствующие строки из таблицы Orders будут включены. Если нет соответствующих заказов для клиентов, то будут возвращены NULL значения.

#theory // Just Python
Cement

Cement — это фреймворк для создания интерфейсов командной строки (CLI). Он помогает разработчикам быстро создавать мощные и удобные CLI-приложения.

#theory // Just Python
Логические блоки

• Используйте один уровень отступа для каждого нового блока кода (циклы, условия, функции и так далее).
• Избегайте хардкод-чисел. Заменяйте числа в коде на именованные константы.

#theory // Just Python
Использование zip() для объединения нескольких списков

Когда вам нужно параллельно обрабатывать элементы из нескольких списков, функция zip() позволяет удобно объединить их в пары (или кортежи), что упрощает работу с ними.

#theory // Just Python
Использование functools.cache_property для кеширования свойств объектов

Начиная с Python 3.8, появился декоратор functools.cached_property, который позволяет кешировать результат вычисления свойства объекта. Это полезно, когда свойство требует сложных вычислений или обращений к ресурсам, но результат не меняется при повторных вызовах.

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

#theory // Just Python
Использование defaultdict для упрощения работы со словарями

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

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

#theory // Just Python
Использование f-string для форматирования строк с вычислениями

Когда вам нужно встроить вычисления прямо в строку или форматировать вывод значений переменных, f-string (форматированные строки) — это быстрый и удобный способ сделать это.

Использование f-string позволяет упростить форматирование строк и объединить в одной строке текст с результатами вычислений, что делает код более чистым и эффективным.

#theory // Just Python
HTTPX — современный клиент для работы с HTTP-запросами

HTTPX — это библиотека для выполнения HTTP-запросов, которая поддерживает асинхронные операции, полную совместимость с requests, и предоставляет мощные возможности для работы с сетевыми запросами. Она идеально подходит для тех случаев, когда вам нужно быстро и эффективно выполнять HTTP-запросы в асинхронных приложениях.

Ссылочка на доку

#theory // Just Python
Использование списковых включений (list comprehensions) для создания списков

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

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

#theory // Just Python
Использование метода get() для безопасного доступа к значениям в словаре

Когда вы работаете со словарями, существует риск, что запрашиваемый ключ может отсутствовать, что вызовет ошибку. Метод get() помогает избежать этой проблемы, возвращая значение по умолчанию, если ключ не найден.

Использование метода get() делает ваш код более безопасным и позволяет легко обрабатывать случаи, когда ключ отсутствует в словаре, не вызывая сбоев в работе программы.

#theory // Just Python
Использование contextlib.nullcontext для временного отключения контекстного менеджера

Начиная с Python 3.7, появился contextlib.nullcontext, который используется в ситуациях, когда требуется контекстный менеджер, но не нужно выполнять никаких действий в начале и конце блока. Это удобно, когда вы хотите условно использовать контекстный менеджер или временно его отключить.

В этом примере nullcontext используется для обхода реального контекстного менеджера, если он не нужен в текущих условиях.

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

#theory // Just Python
Использование collections.Counter для подсчета частоты элементов в коллекции

Когда вам нужно подсчитать, как часто встречается каждый элемент в списке или другой коллекции, Counter из модуля collections предоставляет простой и эффективный способ сделать это.

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

#theory // Just Python
math.fmod

math.fmod — это функция в модуле math, которая вычисляет остаток от деления двух чисел, используя их знаки. В отличие от оператора %, который всегда возвращает результат с тем же знаком, что и делитель, math.fmod возвращает результат с тем же знаком, что и делимое.

#theory // Just Python