codecs.iterdecode
Разъяснивший Python
codecs.iterdecode
поэлементно декодирует поток байтов в текст, используя заданную кодировку. Это полезно для обработки больших файлов или потоков в ограниченной памяти, без загрузки всего содержимогоРазъяснивший Python
Получаем имя текущей функции
Иногда при отладке или логировании нужно узнать, в какой функции мы находимся. Новички могут прописывать имя функции вручную, но Python позволяет получить его автоматически с помощью inspect.
Модуль inspect предоставляет функцию
Итог:
С помощью inspect можно автоматически получать имя текущей функции, что упрощает логирование и повышает читаемость кода.
Разъяснивший Python
Иногда при отладке или логировании нужно узнать, в какой функции мы находимся. Новички могут прописывать имя функции вручную, но Python позволяет получить его автоматически с помощью inspect.
Модуль inspect предоставляет функцию
currentframe()
, которая возвращает текущий стек вызовов. А f_code.co_name вытаскивает имя функции. Это особенно полезно для логов, когда хочется избежать ручного дублирования.Итог:
С помощью inspect можно автоматически получать имя текущей функции, что упрощает логирование и повышает читаемость кода.
Разъяснивший Python
Убираем фон с любой картинки за пару секунд с помощью Python!
Хотите автоматизировать обработку изображений без фотошопа?
Скрипт-проект на базе библиотеки rembg:
Установка:
Пример кода:
Открывает файл;
Убирает фон;
Сохраняет готовое изображение.
GitHub/Инструкция
Разъяснивший Python
Хотите автоматизировать обработку изображений без фотошопа?
Скрипт-проект на базе библиотеки rembg:
Установка:
Python
pip install rembg
Пример кода:
Python
from rembg import remove
def remove_background(input_path: str, output_path: str) -> None:
"""Удаляет фон с изображения и сохраняет результат."""
with open(input_path, 'rb') as input_file:
with open(output_path, 'wb') as output_file:
image_bytes: bytes = input_file.read()
output_bytes: bytes = remove(image_bytes)
output_file.write(output_bytes)
if __name__ == "__main__":
remove_background('input.png', 'output.png')
Открывает файл;
Убирает фон;
Сохраняет готовое изображение.
GitHub/Инструкция
Разъяснивший Python
Random Forest
Random Forest — это не одно дерево, а сразу много. Каждый “деревце” в лесу обучается на случайной части данных и с использованием случайного поднабора признаков. Когда нужно предсказать класс или значение, все деревья голосуют, и побеждает большинство (в классификации) или усреднённый ответ (в регрессии). В результате снижается переобучение по сравнению с одиночным деревом, а сама модель меньше зависит от случайных шумов.
Сначала из обучающей выборки с помощью бутстрэпа выбирается случайная подвыборка (с возвращением). Для каждого дерева берётся случайный набор признаков. Все деревья предсказывают, и итоговый ответ — это агрегация: большинство голосов в классификации или среднее значение в регрессии.
Обрати внимание на пример. n_estimators определяет, сколько деревьев. max_depth — максимальная глубина каждого дерева. random_state — фиксируем сид, чтобы результат был воспроизводим. Можно добавлять class_weight='balanced', если классы несбалансированы.
Разъяснивший Python
Random Forest — это не одно дерево, а сразу много. Каждый “деревце” в лесу обучается на случайной части данных и с использованием случайного поднабора признаков. Когда нужно предсказать класс или значение, все деревья голосуют, и побеждает большинство (в классификации) или усреднённый ответ (в регрессии). В результате снижается переобучение по сравнению с одиночным деревом, а сама модель меньше зависит от случайных шумов.
Сначала из обучающей выборки с помощью бутстрэпа выбирается случайная подвыборка (с возвращением). Для каждого дерева берётся случайный набор признаков. Все деревья предсказывают, и итоговый ответ — это агрегация: большинство голосов в классификации или среднее значение в регрессии.
Обрати внимание на пример. n_estimators определяет, сколько деревьев. max_depth — максимальная глубина каждого дерева. random_state — фиксируем сид, чтобы результат был воспроизводим. Можно добавлять class_weight='balanced', если классы несбалансированы.
Разъяснивший Python
Проверяем тип переменной
В процессе разработки важно понимать, с каким типом данных вы работаете. Многие новички используют print(type(x)), чтобы узнать тип переменной, но Python предлагает более универсальный способ —
Функция
Итог:
Разъяснивший Python
В процессе разработки важно понимать, с каким типом данных вы работаете. Многие новички используют print(type(x)), чтобы узнать тип переменной, но Python предлагает более универсальный способ —
isinstance()
.Функция
isinstance()
проверяет, принадлежит ли объект к определённому типу (или группе типов). Это особенно удобно при написании условий и обработке разных данных.Итог:
isinstance()
— удобный инструмент для проверки типов, особенно когда нужно обрабатывать переменные разных типов в одном блоке кода.Разъяснивший Python
Узнаем курс рубля за определенную дату
forex-python позволяет получать данные о курсе валют в определённое время и конвертировать одну валюту в другую.
Установка пакета -
Текущая программа позволяет нам узнать курс рубля относительно многих других валют мира за 28 апреля 2010 года(в 10 часов 53 минут 30 секунд).
Документация библиотеки находиться здесь.
Разъяснивший Python
forex-python позволяет получать данные о курсе валют в определённое время и конвертировать одну валюту в другую.
Установка пакета -
pip install forex-python
.Текущая программа позволяет нам узнать курс рубля относительно многих других валют мира за 28 апреля 2010 года(в 10 часов 53 минут 30 секунд).
Документация библиотеки находиться здесь.
Разъяснивший Python
The Экономист
⚡️ Разыгрываем сразу 3 новеньких iPhone 16! Отличный вариант получить свежайшие гаджеты просто за то, что читаете нас! Для участия нужно: 1. Быть подписанным на The Экономист, Москоубизнес и Доллар по тридцать. 2. Нажать «Участвую!» под этим постом. …
⚡️Уже ЗАВТРА мы подведём итоги масштабного розыгрыша среди наших подписчиков — победители получат сразу три новеньких iPhone 16!
Самое время подписаться на @economica, @mosbusy и @ruble30 и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже 25 апреля в 18:00!
Самое время подписаться на @economica, @mosbusy и @ruble30 и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже 25 апреля в 18:00!
Telegram
The Экономист
⚡️ Разыгрываем сразу 3 новеньких iPhone 16!
Отличный вариант получить свежайшие гаджеты просто за то, что читаете нас! Для участия нужно:
1. Быть подписанным на The Экономист, Москоубизнес и Доллар по тридцать.
2. Нажать «Участвую!» под этим постом.…
Отличный вариант получить свежайшие гаджеты просто за то, что читаете нас! Для участия нужно:
1. Быть подписанным на The Экономист, Москоубизнес и Доллар по тридцать.
2. Нажать «Участвую!» под этим постом.…
Получаем путь к текущему файлу
При работе с файлами часто нужно знать, где находится сам исполняемый скрипт. Новички могут указывать путь вручную, но Python умеет получать его автоматически с помощью встроенного модуля os.
Функция
Итог:
С помощью
Разъяснивший Python
При работе с файлами часто нужно знать, где находится сам исполняемый скрипт. Новички могут указывать путь вручную, но Python умеет получать его автоматически с помощью встроенного модуля os.
Функция
os.path.abspath(__file__)
возвращает абсолютный путь к текущему файлу, а os.path.dirname()
— директорию, в которой он находится.Итог:
С помощью
os.path.abspath(__file__)
и os.path.dirname()
можно динамически определять путь к текущему файлу и его директории — это удобно для настройки путей и работы с файлами без хардкода.Разъяснивший Python
Forwarded from Русский ритейл и бизнес
Spektr опубликовал отчёт по итогам исследования «Крупнейшие российские экосистемы 2024-25». Наиболее активно развивающиеся вертикали — финансы, покупки, развлечения и образование.
Лидером по знанию в наибольшем числе вертикалей оказались сервисы Сбера (8 из 18), второе место у Яндекса (6 из 18). Среди направлений, где лидирует Сбер, — финансы (Сбербанк Онлайн), здоровье (СберЗдоровье) и недвижимость (Домклик). Среди вертикалей, где лидирует Яндекс, — мобильность (Яндекс Такси), информация (Яндекс Карты) и голосовые ассистенты (Алиса). @retailrus
Лидером по знанию в наибольшем числе вертикалей оказались сервисы Сбера (8 из 18), второе место у Яндекса (6 из 18). Среди направлений, где лидирует Сбер, — финансы (Сбербанк Онлайн), здоровье (СберЗдоровье) и недвижимость (Домклик). Среди вертикалей, где лидирует Яндекс, — мобильность (Яндекс Такси), информация (Яндекс Карты) и голосовые ассистенты (Алиса). @retailrus
Получаем путь к текущему файлу
При работе с файлами часто нужно знать, где находится сам исполняемый скрипт. Новички могут указывать путь вручную, но Python умеет получать его автоматически с помощью встроенного модуля os.
Функция
Итог:
С помощью
Разъяснивший Python
При работе с файлами часто нужно знать, где находится сам исполняемый скрипт. Новички могут указывать путь вручную, но Python умеет получать его автоматически с помощью встроенного модуля os.
Функция
os.path.abspath(__file__)
возвращает абсолютный путь к текущему файлу, а os.path.dirname()
— директорию, в которой он находится.Итог:
С помощью
os.path.abspath(__file__)
и os.path.dirname()
можно динамически определять путь к текущему файлу и его директории — это удобно для настройки путей и работы с файлами без хардкода.Разъяснивший Python
Антипаттерн недели:
В Python использование
Всегда явно указывайте тип исключения.
Разъяснивший Python
except:
без указания типа исключенияВ Python использование
except:
без типа перехватывает все ошибки, включая системные (KeyboardInterrupt
, SystemExit
). Это может затруднить отладку и скрыть критические проблемы.Всегда явно указывайте тип исключения.
Разъяснивший Python
Оживляем пиксели по-взрослому!
Lada — умное Python приложение на базе ИИ, предназначенное для восстановления пикселизированных, "взрослых" видео и возвращение картинке былой чёткости 😈
Работать с ним можно как через удобный графический интерфейс, так и прямо из командной строки.
Что важно знать:
Нужна видеокарта Nvidia с поддержкой CUDA;
Для видео в 1080p потребуется минимум 6–8 ГБ видеопамяти, для 4K — желательно побольше.
Всё восстановленное видео можно сохранить в отдельный файл — без искажений и артефактов.
GitHub/Инструкция
Разъяснивший Python
Lada — умное Python приложение на базе ИИ, предназначенное для восстановления пикселизированных, "взрослых" видео и возвращение картинке былой чёткости 😈
Работать с ним можно как через удобный графический интерфейс, так и прямо из командной строки.
Что важно знать:
Нужна видеокарта Nvidia с поддержкой CUDA;
Для видео в 1080p потребуется минимум 6–8 ГБ видеопамяти, для 4K — желательно побольше.
Всё восстановленное видео можно сохранить в отдельный файл — без искажений и артефактов.
GitHub/Инструкция
Разъяснивший Python
Замеряем время выполнения кода
Иногда важно понять, сколько времени занимает выполнение определённого блока кода — особенно при отладке или оптимизации. Вместо сложных инструментов можно использовать встроенный модуль
Простой способ — сохранить текущее время перед началом работы и вычесть его из времени после выполнения кода.
Итог:
Используйте
Разъяснивший Python
Иногда важно понять, сколько времени занимает выполнение определённого блока кода — особенно при отладке или оптимизации. Вместо сложных инструментов можно использовать встроенный модуль
time
.Простой способ — сохранить текущее время перед началом работы и вычесть его из времени после выполнения кода.
Итог:
Используйте
time.time()
для простого и наглядного замера времени выполнения кода — удобно при отладке и профилировании.Разъяснивший Python
👎2
importlib.invalidate_caches
Разъяснивший Python
importlib.invalidate_caches()
очищает внутренний кэш путей поиска модулей. Это полезно при динамическом создании или удалении .py файлов, особенно в тестах, плагинах и REPL-средах, когда модуль может появиться в процессе выполненияРазъяснивший Python
faulthandler.dump_traceback_later
Разъяснивший Python
faulthandler.dump_traceback_later
планирует автоматический вывод стека вызовов через заданное количество секунд. Это полезно для отладки зависших программ, бесконечных циклов или неожиданных блокировокда модуль может появиться в процессе выполненияРазъяснивший Python
Проверяем, существует ли файл
Часто в программах нужно проверить, существует ли файл перед его использованием. Новички могут пробовать открывать файл и ловить исключения, но Python предлагает более элегантный способ через os.path.
Функция
Итог:
С помощью
Разъяснивший Python
Часто в программах нужно проверить, существует ли файл перед его использованием. Новички могут пробовать открывать файл и ловить исключения, но Python предлагает более элегантный способ через os.path.
Функция
os.path.exists()
проверяет наличие файла или директории по заданному пути. Это безопасный и читаемый способ убедиться, что нужный файл действительно есть перед его использованием.Итог:
С помощью
os.path.exists()
можно легко и безопасно проверять существование файлов, избегая лишних ошибок при открытии несуществующих путей.Разъяснивший Python
👍1
Работаем с переменными окружения в Python
Переменные окружения часто используются для хранения конфиденциальных данных — например, API-ключей, логинов, паролей. Вместо того чтобы хардкодить их в код, безопаснее читать их через
Это удобно, безопасно и позволяет легко переключаться между разными окружениями (например, dev и prod).
Итог:
Используйте
Разъяснивший Python
Переменные окружения часто используются для хранения конфиденциальных данных — например, API-ключей, логинов, паролей. Вместо того чтобы хардкодить их в код, безопаснее читать их через
os.environ
.Это удобно, безопасно и позволяет легко переключаться между разными окружениями (например, dev и prod).
Итог:
Используйте
os.environ.get()
для безопасного доступа к переменным окружения — это защищает ваш код от утечек данных и упрощает настройку.Разъяснивший Python
Преобразуем объект в JSON-строку
Часто возникает необходимость сериализовать данные — например, отправить словарь через API или сохранить в файл. Новички могут пытаться делать это вручную, но Python предлагает простой способ через модуль json.
С помощью
Итог:
Модуль
Разъяснивший Python
Часто возникает необходимость сериализовать данные — например, отправить словарь через API или сохранить в файл. Новички могут пытаться делать это вручную, но Python предлагает простой способ через модуль json.
С помощью
json.dumps()
можно быстро преобразовать любой объект (например, словарь) в строку формата JSON.Итог:
Модуль
json
позволяет удобно преобразовывать Python-объекты в строки JSON. Используйте json.dumps()
для сериализации.Разъяснивший Python
Получение ID текущего процесса
Функция i
Разъяснивший Python
Функция i
d()
возвращет уникальный идентификатор переданного ей в качестве аргумента объекта. Этот идентификатор является адресом в памяти, по которому расположен сам объект.Разъяснивший Python
👎1🌚1
Мы раскрываем скрытые механизмы ядра через наглядные шпаргалки и яркую визуальную графику, детально разбираем малоизвестные команды и скрипты.
Экспресс-гайды, которые экономят часы поиска: t.me/linuxacademiya
Please open Telegram to view this post
VIEW IN TELEGRAM