Mutagen - библиотека предназначенная для редактирования тегов ID3v1.1/ID3v2.4 и APEv2
Она поддерживает множество форматов, включая MP3, Ogg Vorbis, FLAC и многие другие.
Mutagen также предоставляет возможность работы с аудиофайлами в потоковом режиме, что делает ее очень удобной и мощной.
Ставится командой ⚙️
Документация и примеры кода здесь
Разъяснивший Python
Она поддерживает множество форматов, включая MP3, Ogg Vorbis, FLAC и многие другие.
Mutagen также предоставляет возможность работы с аудиофайлами в потоковом режиме, что делает ее очень удобной и мощной.
Ставится командой ⚙️
pip install mutagen
Документация и примеры кода здесь
Разъяснивший Python
smtplib - библиотека для отправки сообщений на адрес электронной почты в Python.
Библиотеку smtplib не нужно скачивать, это означает, что она стандартная.
Плюсы библиотеки: простая в использовании, можно отправлять письма на почту всего за несколько строк кода, как показано на скрине.
Также smtplib поддерживает защищенное соединение SSL/TLS с SMTP сервером.
Документация и примеры код здесь (русская)
Официальная документация здесь (английская)
Разъяснивший Python
Библиотеку smtplib не нужно скачивать, это означает, что она стандартная.
Плюсы библиотеки: простая в использовании, можно отправлять письма на почту всего за несколько строк кода, как показано на скрине.
Также smtplib поддерживает защищенное соединение SSL/TLS с SMTP сервером.
Документация и примеры код здесь (русская)
Официальная документация здесь (английская)
Разъяснивший Python
Pylint - популярный линтер для Python версий 2.x/3.x.
Он проверяет код на соответствие PEP-8.
А также непосредственно запускает его, чтобы найти ошибки.
Либо какие-то неочевидные проблемы.
Также линтер сообщает разработчику, как улучшить свой код или сделать его более читабельным.
Крч для Python разработчика — Must Have
Ставится командой ⚙️
Документация и примеры кода здесь
Разъяснивший Python
Он проверяет код на соответствие PEP-8.
А также непосредственно запускает его, чтобы найти ошибки.
Либо какие-то неочевидные проблемы.
Также линтер сообщает разработчику, как улучшить свой код или сделать его более читабельным.
Крч для Python разработчика — Must Have
Ставится командой ⚙️
pip install pylint
Документация и примеры кода здесь
Разъяснивший Python
🔥1
Как легко сконвертировать изображение в любой нужный формат (например JPG -> PNG)?
Для этого в модуле Pillow есть методы save() и convert(), которые позволяют сохранить ваше фото в новом формате или просто переименовать его, например, image.jpg в img.png
Для того чтобы сделать это в Python, нужно сначала установить Pillow:
Затем напишите следующий код:
Замените "имя_файла.jpg" на ваше имя файла или путь к нему, и после запуска этого кода ваше фото будет сохранено в формате PNG.
В случае обратной конвертации (например, из PNG в JPG) может потребоваться смена режима.
Для этого используем метод convert():
Ставится командой ⚙️
Документация Pillow здесь
Подробнее про смену режима — convert()
Разъяснивший Python
Для этого в модуле 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, что делает её популярным инструментом среди программистов, работающих с облаками.
Ставится командой ⚙️
Официальная документация и примеры кода здесь
Разъяснивший Python
Это мощный инструмент , который позволяет разработчикам создавать, управлять различные задачи в облаке, такие как работа с хранилищем файлов S3, виртуальными серверами EC2, базой данных DynamoDB и многими другими сервисами.
Разработана кнш самой компанией Amazon, библиотека также обеспечивает широкие возможности интеграции с AWS, что делает её популярным инструментом среди программистов, работающих с облаками.
Ставится командой ⚙️
pip install boto3
Официальная документация и примеры кода здесь
Разъяснивший Python
Скачиваем изображение с помощью ссылки в Python
Скопируйте этот код и замените текст <ссылка на ваше изображение> на реальную ссылку, например — https://github.com/github_logo.jpg
Таким же образом можно скачивать любые мелкие файлы.
Текстовые, архивы, иконки и тд.
Главное не забудьте поставить библиотеку requests командой ⚙️
Разъяснивший 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
Когда работаешь со словарём, часто нужно сначала проверять, есть ли ключ. С defaultdict от collections это делается автоматически.
Итог:
defaultdict избавляет от лишних проверок и упрощает код, особенно когда нужно агрегировать или группировать данные.
Разъяснивший Python
Как красиво подставлять переменные в строку?
Новички часто используют конкатенацию (+) или .format() для создания строк с переменными, но это может быть громоздко и неудобно. Python предлагает современный и удобный способ — f-строки (форматированные строки), которые позволяют подставлять значения прямо внутрь строки с минимальным синтаксисом.
Для этого перед строкой нужно поставить f, а переменные — обернуть в фигурные скобки {}.
Итог:
f-строки — простой и читаемый способ форматирования.
Позволяют вставлять выражения прямо в строку.
Быстрее и удобнее, чем .format() или +.
Разъяснивший Python
Новички часто используют конкатенацию (+) или .format() для создания строк с переменными, но это может быть громоздко и неудобно. Python предлагает современный и удобный способ — f-строки (форматированные строки), которые позволяют подставлять значения прямо внутрь строки с минимальным синтаксисом.
Для этого перед строкой нужно поставить f, а переменные — обернуть в фигурные скобки {}.
Итог:
f-строки — простой и читаемый способ форматирования.
Позволяют вставлять выражения прямо в строку.
Быстрее и удобнее, чем .format() или +.
Разъяснивший Python
👍1
Как узнать, есть ли элемент в списке?
Иногда нужно проверить, содержится ли элемент в списке. Новички могут использовать циклы, но Python предлагает более быстрый способ — оператор in.
Этот приём позволяет проверить наличие элемента за одну строку: "item" in list1 возвращает True, если элемент есть в списке, и False, если нет.
Итог:
Проверка за одну строку.
Читается как обычное предложение.
Работает мгновенно!
Разъяснивший Python
Иногда нужно проверить, содержится ли элемент в списке. Новички могут использовать циклы, но Python предлагает более быстрый способ — оператор in.
Этот приём позволяет проверить наличие элемента за одну строку: "item" in list1 возвращает True, если элемент есть в списке, и False, если нет.
Итог:
Проверка за одну строку.
Читается как обычное предложение.
Работает мгновенно!
Разъяснивший Python
Bottle — это мини-фреймворк для Python, позволяющий писать веб-приложения с высокой скоростью, и он представлен в виде одного файла bottle.py, так что для его работы достаточно только этого файла.
Мы все обожаем примеры, поэтому вот код для начала работы с Bottle:
Здесь мы создали веб сервер по адресу localhost с портом 8080.
Вы можете изменить текст "Hello {{name}}" на любой другой текст.
Чтобы проверить его работу, просто перейдите по ссылке http://localhost:8080/hello/world. После этого вы увидите на экране "Hello World".
Повторюсь, Bottle распространяется в виде одного файла-модуля и не имеет никаких зависимостей, кроме стандартной библиотеки Python.
Ставится командой ⚙️
Официальная документация только на английском
Русская документация
Разъяснивший Python\
Мы все обожаем примеры, поэтому вот код для начала работы с 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!
Самое время подписаться на @economica, @ruble30 и @trendswhat и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже завтра в 18:00!
Самое время подписаться на @economica, @ruble30 и @trendswhat и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже завтра в 18:00!
Проверка аргументов функций — assert как мини-валидация
Иногда нужно быстро проверить корректность аргументов функции. Можно использовать assert для встроенной валидации прямо в начале.
Итог:
assert — быстрый способ «подстелить соломку» и отлавливать очевидные ошибки ещё до выполнения основного тела функции. Особенно полезно в прототипах и тестах.
Разъяснивший Python
Иногда нужно быстро проверить корректность аргументов функции. Можно использовать assert для встроенной валидации прямо в начале.
Итог:
assert — быстрый способ «подстелить соломку» и отлавливать очевидные ошибки ещё до выполнения основного тела функции. Особенно полезно в прототипах и тестах.
Разъяснивший Python
Получаем HTML код в Python с помощью библиотеки requests
Импортируем requests:
Добавляем
Получаем HTML разметку с помощью свойства text
Полный код
Более подробную информацию про работу с библиотекой requests можете прочитать здесь
Разъяснивший Python
Импортируем requests:
import requests
Добавляем
get("Ссылка")
чтобы requests знал, с чем вы работаете, к примеру укажем страницу Googlesite = requests.get("https://google.com")
Получаем HTML разметку с помощью свойства text
html_code = site.text
Полный код
# Импортируем requests
import requests
# Добавляем get("Ссылка") чтобы requests знал, с чем мы работаем. Например, укажем страницу Google
site = requests.get("https://google.com")
# Получаем HTML разметку с помощью text
html_code = site.text
# Выводим HTML код
print(html_code)
Более подробную информацию про работу с библиотекой requests можете прочитать здесь
Разъяснивший Python
🤯2
APScheduler — это инструмент для автоматизации задач в Python. Он позволяет планировать выполнение задач в определённое время или через интервалы.
Можно настроить задачи по расписанию, например, ежедневно или еженедельно. Это удобно для регулярных действий, таких как отправка уведомлений или обновление данных.
Ставится командой ⚙️
Документация и примеры кода здесь.
Разъяснивший Python
Можно настроить задачи по расписанию, например, ежедневно или еженедельно. Это удобно для регулярных действий, таких как отправка уведомлений или обновление данных.
Ставится командой ⚙️
pip install APScheduler
Документация и примеры кода здесь.
Разъяснивший Python
ReadWriteMemory — это топовая библиотека, позволяющая легко читать/записывать в память любого процесса.
С её помощью можно, например, сделать читы для игры.
А если подрубить такие библиотеки, как imGui, то можно вывести и оверлей чита.
Либо сделать простой трейнер.
Ставится командой
Документация и примеры кода здесь.
Разъяснивший Python
С её помощью можно, например, сделать читы для игры.
А если подрубить такие библиотеки, как imGui, то можно вывести и оверлей чита.
Либо сделать простой трейнер.
Ставится командой
pip install ReadWriteMemory
Документация и примеры кода здесь.
Разъяснивший Python
Как оптимизировать память используя генераторы вместо списков
Когда мы работаем с большими наборами данных, важно помнить об эффективном использовании памяти. Одной из полезных фишек Python для оптимизации памяти является использование генераторов вместо списков.
Пример кода
Допустим, у нас есть задача найти квадраты чисел от 1 до 1 000 000. Сначала посмотрим, как это сделать с помощью списка:
Этот код создает список квадратов чисел, что требует значительного объема памяти. Вместо этого можно использовать генератор, который создаст объекты по мере их запроса, не занимая много памяти:
Теперь squares - это генератор, который генерирует квадраты чисел по мере необходимости, занимая минимальное количество памяти.
Разъяснивший Python
Когда мы работаем с большими наборами данных, важно помнить об эффективном использовании памяти. Одной из полезных фишек Python для оптимизации памяти является использование генераторов вместо списков.
Пример кода
Допустим, у нас есть задача найти квадраты чисел от 1 до 1 000 000. Сначала посмотрим, как это сделать с помощью списка:
# Плохая практика: использование списка
squares = [x**2 for x in range(1, 1000001)]
Этот код создает список квадратов чисел, что требует значительного объема памяти. Вместо этого можно использовать генератор, который создаст объекты по мере их запроса, не занимая много памяти:
# Лучшая практика: использование генератора
squares = (x**2 for x in range(1, 1000001))
Теперь squares - это генератор, который генерирует квадраты чисел по мере необходимости, занимая минимальное количество памяти.
Разъяснивший Python
Модуль dataclasses предназначен для упрощения создания классов данных.
Он предоставляет декоратор и набор инструментов, которые автоматически генерируют основные методы класса, такие как
В примере выше мы используем декоратор @dataclass, чтобы автоматически сгенерировать методы класса Point. Мы определяем поля x, y и z, которые представляют координаты точки. После создания экземпляра класса Point с помощью аргументов конструктора, мы можем напрямую выводить информациюreprтод
Подробнее здесь
Разъяснивший Python
Он предоставляет декоратор и набор инструментов, которые автоматически генерируют основные методы класса, такие как
__init__()
, __repr__()
, __eq__()
, и другие. Это упрощает создание классов, которые служат простым хранилищем данных, без необходимости вручную определять все методыВ примере выше мы используем декоратор @dataclass, чтобы автоматически сгенерировать методы класса Point. Мы определяем поля x, y и z, которые представляют координаты точки. После создания экземпляра класса Point с помощью аргументов конструктора, мы можем напрямую выводить информациюreprтод
__repr__()
автоматически сгенерирован. Это делает код более лаконичным и удобным для использования.Подробнее здесь
Разъяснивший Python
Безопасное закрытие ресурсов с contextlib.suppress
Иногда нужно проигнорировать конкретные ошибки, не загромождая код try/except-блоками. contextlib.suppress делает это изящно.
Итог:
Разъяснивший Python
Иногда нужно проигнорировать конкретные ошибки, не загромождая код try/except-блоками. contextlib.suppress делает это изящно.
Итог:
contextlib.suppress
помогает лаконично и безопасно игнорировать конкретные исключения, не засоряя код лишней обработкой.Разъяснивший Python
Задачи с LeetCode: Two Sum
Продолжаем делиться циклом видео, где автор решает различные задачи с LeetCode.
Дан массив целых чисел nums и целое число target. Найти индексы двух чисел, сумма которых равна target. Гарантируется, что такой ответ существует и каждый элемент используется не более одного раза.
Пример:
👀Смотреть видео
Разъяснивший Python
Продолжаем делиться циклом видео, где автор решает различные задачи с LeetCode.
Дан массив целых чисел nums и целое число target. Найти индексы двух чисел, сумма которых равна target. Гарантируется, что такой ответ существует и каждый элемент используется не более одного раза.
Пример:
nums = [2, 7, 11, 15], target = 9
# Ответ: [0, 1], потому что nums[0] + nums[1] = 2 + 7 = 9
👀Смотреть видео
Разъяснивший Python
Простое логирование времени выполнения кода с timeit
Нужно быстро узнать, сколько времени занимает участок кода? Не нужно писать таймеры вручную — есть
Итог
Модуль
Разъяснивший Python
Нужно быстро узнать, сколько времени занимает участок кода? Не нужно писать таймеры вручную — есть
timeit
.Итог
Модуль
timeit
— удобный способ измерить производительность кода без лишней возни с time. Особенно полезен при сравнении разных реализаций.Разъяснивший Python