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

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

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

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
F-строки: Подход к форматированию строк на Pythonic (ч.1)

Python поддерживает несколько различных методов форматирования строк, таких как форматирование в стиле C с использованием символов %, встроенная функция format() и f-строки.

Если вы всё ещё не используете более старые версии, чем Python 3.6, f-строки, безусловно, являются наиболее удобным способом форматирования строк, потому что они могут выполнять все задачи форматирования с минимумом кода и даже запускать выражения внутри строк.

🔗 Python tricks
F-строки: Подход к форматированию строк на Pythonic (ч.2)

Как показано в коде, есть только две вещи, которые нужно сделать для использования f-строк:

1)Добавить букву “f” перед строкой, чтобы указать, что это f-строка.
2)Использовать фигурные скобки с именем переменной и необязательный спецификатор формата внутри строки ({variable_name:format}), чтобы интерполировать значение переменной в определённом формате.

“Простое лучше сложного”. f-строки являются хорошим отражением этой цитаты из "The Zen of Python". Более того, мы можем напрямую выполнить выражение внутри f-строки.

🔗 Python tricks
Chartify

Chartify — это библиотека визуализации. Ее цель — максимально упростить создание диаграмм для специалистов по данным. Библиотека поставляется с удобным синтаксисом и логическим форматированием данных (в отличие от других инструментов). Для создания быстрых и красивых диаграмм требуется меньше времени. Сама библиотека была написана в Spotify labs.

🔗 Python tricks
Pillow

Pillow является ответвлением Python Imaging Library. Эта библиотека подойдет для создания миниатюр, преобразования в различные форматы, наложения фильтров, вращения и отображения изображений и т.д. Pillow — идеальный вариант для пакетной обработки большого количества изображений.

🔗 Python tricks
string.startswith

Метод startswith() возвращает True, если строка начинается с указанного префикса (строки). Если нет, он возвращает False. При необходимости ты можешь задать начальную и конечную позиции, в которых нужно проверить префикс внутри строки.

🔗 Python tricks
Colorama

Colorama помогает добавить цвета в терминал. Этот пакет отлично украшает Python-скрипты. Документация проста и понятна, почитать ее можно на странице Colorama в PyPI.

Если хотите, чтобы Colorama работала под Windows, то вначале вызовите colorama.init().

🔗 Python tricks
Simplejson

Что не так с нативным JSON-модулем в Python? Ничего! Более того, json в Python — это и есть simplejson. То есть Python берет версию simplejson и добавляет ее в каждый свой релиз. А в использовании simplejson есть свои преимущества, ведь он:
• поддерживается в большем количестве версий Python;
• обновляется чаще, чем стандартный модуль Python;
• содержит дополнительные части, написанные на С, из-за чего работает очень быстро.

🔗 Python tricks
Интроспекция

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

В Python есть несколько способов использовать интроспекцию. Один из способов — использовать встроенные функции type(), dir() и getattr().

🔗 Python tricks
Requests

Requests основан на самой часто скачиваемой Python-библиотеке — urllib3. Requests максимально упрощает веб-запросы, оставаясь при этом чрезвычайно мощным и разноплановым инструментом. Скорее всего, вы уже знакомы с этим пакетом, но без него мой список был бы неполным.

🔗 Python tricks
JmesPath

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

🔗 Python tricks
Рефлексия

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

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

Функция reload() в Python перезагружает ранее импортированный модуль. Это означает, что код модуля выполняется заново, и любые изменения в модуле становятся доступными.

Функция reload() принимает в качестве аргумента объект модуля. Этот объект должен быть ранее импортированным модулем.

🔗 Python tricks
Python-dateutil

python-dateutil предлагает мощные расширения стандартного модуля datetime. Мой профессиональный опыт подсказывает, что там, где заканчивается стандартный функционал datetime в Python, начинается сфера python-dateutil.

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

Функция coerce() предназначена для приведения типов двух операндов к одному типу. Она используется в основном для операций с числами, но может использоваться и для других типов.

Аргументы функции coerce() — это два операнда, которые необходимо привести к одному типу. Функция возвращает кортеж из двух значений, первый элемент которого — это преобразованный первый операнд, а второй элемент — это преобразованный второй операнд.

Если функция coerce() не может преобразовать один из операндов, она возвращает значение None.

🔗 Python tricks
string.join

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

🔗 Python tricks
Chardet

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

🔗 Python tricks
Emoji

Пакет Emoji либо впечатляет, либо огорчает. Все зависит от самого «оценщика». Шутки шутками, но этот пакет мне очень помог при анализе данных из соцсетей.

🔗 Python tricks
Progress

Progress помогает создавать индикаторы состояния с минимальными усилиями.

🔗 Python tricks
tqdm

tqdm является чуть более современным аналогом progress, выполняющим те же функции. В tqdm есть своя изюминка — им можно пользоваться в командной строке.

🔗 Python tricks
IPython

IPython — это ядро блокнотов Jupyter. Jupyter Notebook — это веб-приложение с открытым кодом, которое позволяет создавать и обмениваться документами с живым кодом, уравнениями, визуализациями и текстовыми описаниями.

🔗 Python tricks
Homeassistant

Если вы интересуетесь домашней автоматизацией, то однозначно попробуйте Home Assistant! Более подробная информация доступна на их сайте. Если получится, то саму платформу можно скачать с Raspberry Pi. Это простой и безопасный способ начать работу. Я установил Home Assistant на более мощный сервер — внутри Docker-контейнера.

🔗 Python tricks