Python tricks | Хитрости Питона
5.75K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

Сотрудничество: @SIeep_Token

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
Библиотека Feather

Feather — это формат данных и библиотека для работы с ним, разработанные для Python. Этот формат обеспечивает быстрое и эффективное чтение и запись данных в структурированных табличных форматах, а также обмен данными между Python и другими языками программирования, такими как R.

Для работы с Feather, вам потребуется установить библиотеку pyarrow, так как Feather использует Apache Arrow для внутреннего представления данных. Установка pyarrow можно выполнить с помощью инструмента управления пакетами, такого как pip. После установки библиотеки pyarrow, вы можете использовать ее для чтения и записи данных в формате Feather

🔗 Python tricks
Метод Counter.elements()

Метод Counter.elements() возвращает итератор по элементам в словаре Counter.
Этот метод позволяет эффективно перебрать элементы словаря Counter без создания копии.

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

🔗 Python tricks
Контекстные менеджеры

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

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

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

🔗 Python tricks
Функция dir() в Python

Функция dir() в Python перечисляет атрибуты и методы объекта. Она принимает объект в качестве аргумента и возвращает список строк, которые являются именами его атрибутов и методов. Использование функции dir() может быть полезно для изучения объектов, чтобы лучше понять, что они делают.

Например, при помощи dir() можно вывести атрибуты встроенного типа данных, такого как список или словарь. Или можно применить эту функцию для пользовательского класса, чтобы посмотреть, что в нем находится. Кроме того, с помощью функции dir() можно изучить плохо документированный модуль или библиотеку.
🔗 Python tricks
Функция help() в Python

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

Функция help() выводит документацию, созданную для определенного токена языка Python. Под токеном подразумеваются ключевые слова, название классов, модулей Python, функций и так далее. Данную функцию мы можем использовать как в консоли, так и в самом коде наших программ.
🔗 Python tricks
Модуль shutil

Модуль shutil в Python предоставляет множество функций для выполнения высокоуровневых операций с файлами и коллекциями файлов. Этот модуль присутствует в процессе установки языка программирования Python.
🔗 Python tricks
Метод join

Метод join() позволяет объединить элементы последовательности (списка, кортежа и т.д.) в строку.

Основные моменты:

— Метод принадлежит строке, вызывается на разделителе.
— В качестве разделителя можно использовать любую строку.
— В результате получится строка, где между элементами последовательности вставлен разделитель.
🔗 Python tricks
Создаем графики в терминале

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

Например, вы можете использовать Bashplotlib для создания гистограммы из массива данных. В этом примере функция plot_hist используется для отображения данных на одномерной гистограмме.
🔗 Python tricks
Модуль unittest

В Python встроен модуль unittest, который поддерживает автоматизацию тестов, использование общего кода для настройки и завершения тестов, объединение тестов в группы, а также позволяет отделять тесты от фреймворка для вывода информации.
🔗 Python tricks
Библиотека PyQt6

PyQt6 — это кроссплатформенная библиотека для создания графических пользовательских интерфейсов. Она позволяет разрабатывать приложения с графическим интерфейсом для desktop и mobile устройств.

PyQt6 основана на фреймворке Qt и использует систему сигналов и слотов для организации взаимодействия в приложении.
С помощью этой библиотеки можно создавать оконные приложения, виджеты, диалоги, меню и другие элементы GUI.

PyQt6 широко применяется для разработки кроссплатформенных приложений под Windows, Linux и macOS.
🔗 Python tricks
Библиотека PyGObject

PyGObject — это библиотека, которая предоставляет привязки к библиотеке GObject используемой в GNOME.
Она позволяет использовать GTK+ и другие библиотеки GNOME для создания графических интерфейсов пользователя.

PyGObject можно использовать для разработки кроссплатформенных GUI-приложений, которые будут работать в средах Linux, Windows и macOS.
С его помощью можно создавать оконные приложения, виджеты, диалоги и другие элементы интерфейса на языке Python.
🔗 Python tricks
Метод partition()

Метод partition() — это метод строк (strings), который используется для разделения строки на три части на основе заданного разделителя. Этот метод возвращает кортеж из трех элементов:

— Часть строки перед первым вхождением разделителя.
— Сам разделитель.
— Часть строки после первого вхождения разделителя.

🔗 Python tricks
Pygal

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

Этот код создает объект диаграммы line_chart, добавляет в нее несколько рядов данных, задает заголовок, подписи по оси X и сохраняет результат в файл SVG.

В итоге получается интерактивный график изменения доли браузеров за определенный период.
🔗 Python tricks
Конструкция try-except-else

Конструкция try-except-else используется для обработки исключений. Особенность этой конструкции заключается в else, этот блок выполняется, если в блоке try не было исключений.

В этом примере в блоке try происходит деление на ноль, которое генерирует исключение ZeroDivisionError. Оно перехватывается в блоке except и обрабатывается. Блок else не выполняется, так как было исключение.

🔗 Python tricks
Модуль subprocess


Модуль subprocess позволяет создавать новые процессы. При этом он может подключаться к стандартным потокам ввода/вывода/ошибок и получать код возврата.

С помощью subprocess можно, например, выполнять любые команды Linux из скрипта. И в зависимости от ситуации получать вывод или только проверять, что команда выполнилась без ошибок.
🔗 Python tricks
Модуль fractions

Класс, представляющий собой рациональные числа. Экземпляр класса можно создать из пары чисел (числитель, знаменатель), из другого рационального числа, числа с плавающей точкой, числа типа decimal.Decimal, и из строки, представляющей собой число.
🔗 Python tricks
Модуль cmath

Модуль cmath – предоставляет функции для работы с комплексными числами. Помарает производить математические вычисления в вашей программе.
🔗 Python tricks
Библиотека dataclasses

Данные можно хранить в разных видах. Мы уже знаем про json, словари и списки. В пайтон есть еще один интересный подход - объектно ориентированный. Он часто намного удобнее и нагляднее. Для самого простого хранения и существует библиотека dataclasses. Она позволяет удобно хранить данные в ОЗУ, объекты создаются минимально возможным количеством строк кода. Ну и согласитесь, смотрится это очень удобно и красиво.
🔗 Python tricks
Сортировка пузырьком

Сортировка пузырьком — это простой алгоритм сортировки, основанный на сравнении и обмене соседних элементов.

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

Сложность алгоритма O(n^2) — квадратичная.

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

🔗 Python tricks
Библиотека SymPy

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

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

Основные области применения SymPy:
— Аналитическая геометрия, алгебра и теория чисел.
— Решение уравнений и систем уравнений.
— Символьное дифференцирование и интегрирование.
— Работа с пределами, рядами, преобразованиями.
— Векторный анализ, тензоры.
— Физические вычисления и моделирование.
— Теория вероятностей и статистика.
— Обработка и визуализация математических данных.
🔗 Python tricks
Модуль glob

Модуль glob находит все пути, совпадающие с заданным шаблоном в соответствии с правилами, используемыми оболочкой Unix. Обрабатываются символы "*" (произвольное количество символов), "?" (один символ), и диапазоны символов с помощью []. Для использования тильды "~" и переменных окружения необходимо использовать os.path.expanduser() и os.path.expandvars().
🔗 Python tricks