Разъяснивший Python
8.17K subscribers
2.43K photos
40 videos
30 files
2.28K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Celery - Celery нужна для работы с фоновыми задачами. Она позволяет выстраивать их в очередь и распределять выполнение между разными процессорами и устройствами. Это помогает уменьшить нагрузку на процессор и выполнять трудоемкие задачи без ущерба производительности. Больше всего Celery полезна для разработчиков приложений.

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

Celery общается через сообщения, обычно через брокера для посредничества между клиентами и работниками. Чтобы инициировать задачу, клиент ставит message в очереди, затем брокер доставляет сообщение рабочему процессу.

Ставится командой ⚙️ pip install celery
Документация и примеры кода здесь

Разъяснивший Python
Requests - одна из самых популярных общедоступных библиотек Python. Ее цель – сделать HTTP-запросы более простыми и удобными для восприятия. Библиотека Requests имеет лицензию Apache2 и написана на Python. Она является фактическим стандартом, который используют разработчики для выполнения HTTP-запросов в Python.

Помимо того, что библиотека Requests может использоваться для отправки HTTP-запросов на сервер, она также позволяет добавлять в них данные формы, содержимое, заголовок, файлы, состоящие из нескольких частей, и т.д. С этой библиотекой разработчикам не нужно добавлять запрос к URL-адресу или кодировать данные POST вручную.

Библиотека Requests абстрагируется от многочисленных сложностей создания HTTP-запросов в простом API, поэтому разработчики могут больше сосредоточится на взаимодействии со службами. Библиотека поддерживает Python 2.7, 3.4 и выше, а также отлично работает с PyPy.

Ставится командой ⚙️ $ pipenv install requests-html
Документация и примеры кода здесь

Разъяснивший Python
Что такое декораторы в Python

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

В примере на фото декоратор timing_decorator измеряет время выполнения функции some_long_running_function и выводит результат на экран.

Декораторы в Python являются удобным способом добавления нового поведения к функциям или классам без изменения их кода. Они используются для решения множества задач, таких как логирование, кеширование, проверка прав доступа и других. Важно понимать основы работы с декораторами, чтобы эффективно использовать их в своих проектах.

Освоив принципы работы с декораторами, вы сможете значительно улучшить структуру своего кода и упростить его поддержку

Разъяснивший Python
Vega-Altair — декларативная библиотека статистической визуализации для Python. С Vega-Altair вы можете потратить больше времени на понимание своих данных и их значения. Вега-Альтаир API прост, дружелюбен и согласован и построен на основе мощной спецификации Vega-Lite JSON. Простота позволяет создавать красивые и эффективные визуализации с минимальным количеством кода.

Vega-Altair был первоначально разработан Джейком Вандерпласом и Брайаном Грейнджер в тесном сотрудничестве с UW Интерактивная лаборатория данных. Проект с открытым исходным кодом Vega-Altair не связан с Altair Engineering, Inc.

Ставится командой ⚙️ pip install altair
Документация и примеры кода здесь

Разъяснивший Python
Тайминг кода без сторонних библиотек

Нужно быстро узнать, сколько времени занимает выполнение участка кода? Воспользуйтесь встроенным модулем time.

time.perf_counter() предоставляет наиболее точные замеры времени исполнения — идеально для бенчмаркинга.

Итог:
С помощью time.perf_counter() можно легко измерять производительность кода без внешних зависимостей.

Разъяснивший Python
👎1
Dora — это библиотека для очистки и разведочного анализа данных, которая значительно упрощает решение задач Data Science. С ее помощью можно преобразовывать категориальные данные в порядковые, менять и удалять столбцы, выделять, извлекать и визуализировать признаки и решать много других задач.

Библиотека содержит удобные функции для очистки данных, выбора и извлечения признаков, визуализации, секционирования данных для проверки модели и версионных преобразований данных.

Библиотека использует и предназначена для того, чтобы стать полезным дополнением к распространенным инструментам анализа данных Python, таким как pandas, scikit-learn и matplotlib.

Ставится командой ⚙️ pip install dora
Документация и примеры кода здесь

Разъяснивший Python
1
Использование генераторов для создания бесконечных последовательностей в Python

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

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

Библиотека использует и предназначена для того, чтобы стать полезным дополнением к распространенным инструментам анализа данных Python, таким как pandas, scikit-learn и matplotlib.

Ставится командой ⚙️ pip install dora
Документация и примеры кода здесь

Разъяснивший Python
👎1
Mutagen - библиотека предназначенная для редактирования тегов ID3v1.1/ID3v2.4 и APEv2

Она поддерживает множество форматов, включая MP3, Ogg Vorbis, FLAC и многие другие.

Mutagen также предоставляет возможность работы с аудиофайлами в потоковом режиме, что делает ее очень удобной и мощной.

Ставится командой ⚙️ pip install mutagen
Документация и примеры кода здесь

Разъяснивший Python
smtplib - библиотека для отправки сообщений на адрес электронной почты в Python.

Библиотеку smtplib не нужно скачивать, это означает, что она стандартная.

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

Также smtplib поддерживает защищенное соединение SSL/TLS с SMTP сервером.

Документация и примеры код здесь (русская)
Официальная документация здесь (английская)

Разъяснивший Python
Pylint - популярный линтер для Python версий 2.x/3.x.

Он проверяет код на соответствие PEP-8.
А также непосредственно запускает его, чтобы найти ошибки.
Либо какие-то неочевидные проблемы.

Также линтер сообщает разработчику, как улучшить свой код или сделать его более читабельным.

Крч для Python разработчика — Must Have

Ставится командой ⚙️ pip install pylint
Документация и примеры кода здесь

Разъяснивший Python
🔥1
Как легко сконвертировать изображение в любой нужный формат (например JPG -> PNG)?

Для этого в модуле Pillow есть методы save() и convert(), которые позволяют сохранить ваше фото в новом формате или просто переименовать его, например, image.jpg в img.png

Важно понимать, что в таком случае меняется не просто расширение файла, но и сами метаданные внутри файла!

Для того чтобы сделать это в Python, нужно сначала установить Pillow:
pip install pillow

Затем напишите следующий код:
from PIL import Image

img = Image.open("имя_файла.jpg")

img.save("имя_файла.png")

Замените "имя_файла.jpg" на ваше имя файла или путь к нему, и после запуска этого кода ваше фото будет сохранено в формате PNG.

В случае обратной конвертации (например, из PNG в JPG) может потребоваться смена режима.
Для этого используем метод convert():
img = img.convert('RGB')


Ставится командой ⚙️ pip install pillow
Документация Pillow здесь
Подробнее про смену режима — convert()

Разъяснивший Python
1
Boto3 - официальный SDK (Software Development Kit), для работы с Amazon Web Services (AWS) и для работы с их облачными сервисами на Python.

Это мощный инструмент , который позволяет разработчикам создавать, управлять различные задачи в облаке, такие как работа с хранилищем файлов S3, виртуальными серверами EC2, базой данных DynamoDB и многими другими сервисами.

Разработана кнш самой компанией Amazon, библиотека также обеспечивает широкие возможности интеграции с AWS, что делает её популярным инструментом среди программистов, работающих с облаками.

Ставится командой ⚙️ pip install boto3
Официальная документация и примеры кода здесь

Разъяснивший Python
Скачиваем изображение с помощью ссылки в Python

import requests

url = "<ссылка на ваше изображение>"
response = requests.get(url)

with open("image.jpg", "wb") as file:
file.write(response.content)

print("Изображение успешно загружено.")

Скопируйте этот код и замените текст <ссылка на ваше изображение> на реальную ссылку, например — https://github.com/github_logo.jpg

Таким же образом можно скачивать любые мелкие файлы.
Текстовые, архивы, иконки и тд.

Главное не забудьте поставить библиотеку requests командой ⚙️ pip install requests

Разъяснивший Python
Словарь с "молчаливыми" значениями — defaultdict

Когда работаешь со словарём, часто нужно сначала проверять, есть ли ключ. С defaultdict от collections это делается автоматически.

Итог:
defaultdict избавляет от лишних проверок и упрощает код, особенно когда нужно агрегировать или группировать данные.

Разъяснивший Python
Как красиво подставлять переменные в строку?

Новички часто используют конкатенацию (+) или .format() для создания строк с переменными, но это может быть громоздко и неудобно. Python предлагает современный и удобный способ — f-строки (форматированные строки), которые позволяют подставлять значения прямо внутрь строки с минимальным синтаксисом.

Для этого перед строкой нужно поставить f, а переменные — обернуть в фигурные скобки {}.

Итог:
f-строки — простой и читаемый способ форматирования.
Позволяют вставлять выражения прямо в строку.
Быстрее и удобнее, чем .format() или +.

Разъяснивший Python
👍1
Как узнать, есть ли элемент в списке?

Иногда нужно проверить, содержится ли элемент в списке. Новички могут использовать циклы, но Python предлагает более быстрый способ — оператор in.

Этот приём позволяет проверить наличие элемента за одну строку: "item" in list1 возвращает True, если элемент есть в списке, и False, если нет.

Итог:
Проверка за одну строку.
Читается как обычное предложение.
Работает мгновенно!

Разъяснивший Python
Bottle — это мини-фреймворк для Python, позволяющий писать веб-приложения с высокой скоростью, и он представлен в виде одного файла bottle.py, так что для его работы достаточно только этого файла.

Мы все обожаем примеры, поэтому вот код для начала работы с Bottle:
from bottle import route, run, template

@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)

run(host='localhost', port=8080)

Здесь мы создали веб сервер по адресу localhost с портом 8080.
Вы можете изменить текст "Hello {{name}}" на любой другой текст.

Чтобы проверить его работу, просто перейдите по ссылке http://localhost:8080/hello/world. После этого вы увидите на экране "Hello World".

Повторюсь, Bottle распространяется в виде одного файла-модуля и не имеет никаких зависимостей, кроме стандартной библиотеки Python.

Ставится командой ⚙️ pip install bottle
Официальная документация только на английском
Русская документация

Разъяснивший Python\
The Экономист
⚡️Дарим сразу три новеньких iPhone 16 за подписку! Для участия в розыгрыше нужно: 1. Быть подписанным на The Экономист, Доллар по тридцать и Чё по трендам? 2. Нажать «Участвую!» под этим постом Бот случайным образом выберет победителей 2 июня в 18:00. Айфоны…
⚡️Уже ЗАВТРА мы подведём итоги масштабного розыгрыша — троим из вас достанется новенький iPhone 16!

Самое время подписаться на @economica, @ruble30 и @trendswhat и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже завтра в 18:00!
Проверка аргументов функций — assert как мини-валидация

Иногда нужно быстро проверить корректность аргументов функции. Можно использовать assert для встроенной валидации прямо в начале.

Итог:
assert — быстрый способ «подстелить соломку» и отлавливать очевидные ошибки ещё до выполнения основного тела функции. Особенно полезно в прототипах и тестах.

Разъяснивший Python