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

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Получаем путь к текущему файлу

При работе с файлами часто нужно знать, где находится сам исполняемый скрипт. Новички могут указывать путь вручную, но 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
Получаем путь к текущему файлу

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

Функция os.path.abspath(__file__) возвращает абсолютный путь к текущему файлу, а os.path.dirname() — директорию, в которой он находится.

Итог:
С помощью os.path.abspath(__file__) и os.path.dirname() можно динамически определять путь к текущему файлу и его директории — это удобно для настройки путей и работы с файлами без хардкода.

Разъяснивший Python
Антипаттерн недели: except: без указания типа исключения

В Python использование except: без типа перехватывает все ошибки, включая системные (KeyboardInterrupt, SystemExit). Это может затруднить отладку и скрыть критические проблемы.

Всегда явно указывайте тип исключения.

Разъяснивший Python
Оживляем пиксели по-взрослому!

Lada — умное Python приложение на базе ИИ, предназначенное для восстановления пикселизированных, "взрослых" видео и возвращение картинке былой чёткости 😈

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

Что важно знать:

Нужна видеокарта Nvidia с поддержкой CUDA;
Для видео в 1080p потребуется минимум 6–8 ГБ видеопамяти, для 4K — желательно побольше.
Всё восстановленное видео можно сохранить в отдельный файл — без искажений и артефактов.

GitHub/Инструкция

Разъяснивший Python
Замеряем время выполнения кода

Иногда важно понять, сколько времени занимает выполнение определённого блока кода — особенно при отладке или оптимизации. Вместо сложных инструментов можно использовать встроенный модуль time.

Простой способ — сохранить текущее время перед началом работы и вычесть его из времени после выполнения кода.

Итог:
Используйте time.time() для простого и наглядного замера времени выполнения кода — удобно при отладке и профилировании.

Разъяснивший Python
👎2
importlib.invalidate_caches

importlib.invalidate_caches() очищает внутренний кэш путей поиска модулей. Это полезно при динамическом создании или удалении .py файлов, особенно в тестах, плагинах и REPL-средах, когда модуль может появиться в процессе выполнения

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

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

Разъяснивший Python
Проверяем, существует ли файл

Часто в программах нужно проверить, существует ли файл перед его использованием. Новички могут пробовать открывать файл и ловить исключения, но Python предлагает более элегантный способ через os.path.

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

Итог:
С помощью os.path.exists() можно легко и безопасно проверять существование файлов, избегая лишних ошибок при открытии несуществующих путей.

Разъяснивший Python
👍1
Работаем с переменными окружения в Python

Переменные окружения часто используются для хранения конфиденциальных данных — например, API-ключей, логинов, паролей. Вместо того чтобы хардкодить их в код, безопаснее читать их через os.environ.

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

Итог:
Используйте os.environ.get() для безопасного доступа к переменным окружения — это защищает ваш код от утечек данных и упрощает настройку.

Разъяснивший Python
Преобразуем объект в JSON-строку

Часто возникает необходимость сериализовать данные — например, отправить словарь через API или сохранить в файл. Новички могут пытаться делать это вручную, но Python предлагает простой способ через модуль json.

С помощью json.dumps() можно быстро преобразовать любой объект (например, словарь) в строку формата JSON.

Итог:
Модуль json позволяет удобно преобразовывать Python-объекты в строки JSON. Используйте json.dumps() для сериализации.

Разъяснивший Python
Получение ID текущего процесса

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

Разъяснивший Python
👎1🌚1
🖥 Linux Academy — топ-канал для продвинутого освоения Linux.

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

Экспресс-гайды, которые экономят часы поиска: t.me/linuxacademiya
Please open Telegram to view this post
VIEW IN TELEGRAM
math.isclose

math.isclose проверяет, близки ли два числа с плавающей запятой с учётом относительной и абсолютной погрешности. Это полезно при сравнении вещественных чисел, где прямое сравнение через == ненадёжно из-за ошибок округления

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