types.new_class()
Разъяснивший Python
types.new_class()
позволяет динамически создавать новые классы во время выполнения программы. Это полезно для метапрограммирования, создания классов с динамическими атрибутами и автоматической генерации API.Разъяснивший Python
asyncio.gather()
Метод
Разъяснивший Python
Метод
asyncio.gather()
из модуля asyncio
позволяет запускать несколько асинхронных задач одновременно и ожидать их завершения. Это удобный инструмент для работы с конкурентным выполнением задач.Разъяснивший Python
signal.set_wakeup_fd()
Разъяснивший Python
signal.set_wakeup_fd()
позволяет отправлять сигналы в файловый дескриптор вместо стандартного обработчика сигналов. Это полезно для обработки сигналов в асинхронных приложениях.Разъяснивший Python
Создаём "невидимый" Python-код!
Этот трюк позволяет прятать код в пустом файле, используя символы-заполнители, которые Python всё равно понимает!
Как это работает?
В начале кода вставлены невидимые символы Zero-Width Space (\u200B) и Zero-Width Non-Joiner (\u200C).
Python игнорирует эти символы, но они мешают текстовому редактору определить, что в файле что-то есть.
В итоге код выглядит пустым, но выполняется!
Где это можно использовать?
Шутки над коллегами — код как будто не существует, но выполняется.
Скрытие "пасхалок" в проектах.
Креативные соревнования по написанию странного кода.
Разъяснивший Python
Этот трюк позволяет прятать код в пустом файле, используя символы-заполнители, которые Python всё равно понимает!
Как это работает?
В начале кода вставлены невидимые символы Zero-Width Space (\u200B) и Zero-Width Non-Joiner (\u200C).
Python игнорирует эти символы, но они мешают текстовому редактору определить, что в файле что-то есть.
В итоге код выглядит пустым, но выполняется!
Где это можно использовать?
Шутки над коллегами — код как будто не существует, но выполняется.
Скрытие "пасхалок" в проектах.
Креативные соревнования по написанию странного кода.
Разъяснивший Python
🔥3
rich.print()
Разъяснивший Python
rich.print()
— это удобный способ красиво выводить текст, таблицы и логи в терминал с поддержкой цветного форматирования. Библиотека rich
делает консольные приложения более читаемыми и наглядными.Разъяснивший Python
👍4
sys.call_tracing()
Разъяснивший Python
sys.call_tracing()
позволяет выполнить функцию с заданными аргументами, включая трассировку вызовов, установленную через sys.settrace()
. Это полезно для профилирования и отладки.Разъяснивший Python
❤1
Анализ логов серверов
Данный код позволяет автоматически анализировать логи веб-серверов (например, Nginx, Apache). Ты сможешь выявлять подозрительные IP-адреса, DDoS-атаки, ошибки 500 и другие аномалии с помощью машинного обучения.
Ссылка на код
Разъяснивший Python
Данный код позволяет автоматически анализировать логи веб-серверов (например, Nginx, Apache). Ты сможешь выявлять подозрительные IP-адреса, DDoS-атаки, ошибки 500 и другие аномалии с помощью машинного обучения.
Ссылка на код
Разъяснивший Python
pathlib.Path.exists()
Метод
Разъяснивший Python
Метод
pathlib.Path.exists()
используется для проверки существования файла или директории. Это удобный способ работы с файловой системой в Python.Разъяснивший Python
Запускаем Python-код… без Python!
Этот трюк позволяет выполнить Python-код, даже если интерпретатор Python не установлен в системе!
Как это работает?
Запрос отправляется на сервер с Python.
Сервер выполняет код и возвращает результат.
Ответ выводится в консоль браузера.
Где это можно использовать?
Когда на ПК нет Python, а код запустить нужно.
Быстрая проверка Python-кода прямо в браузере.
Создание веб-приложений с серверной логикой на Python.
Разъяснивший Python
Этот трюк позволяет выполнить Python-код, даже если интерпретатор Python не установлен в системе!
Как это работает?
Запрос отправляется на сервер с Python.
Сервер выполняет код и возвращает результат.
Ответ выводится в консоль браузера.
Где это можно использовать?
Когда на ПК нет Python, а код запустить нужно.
Быстрая проверка Python-кода прямо в браузере.
Создание веб-приложений с серверной логикой на Python.
Разъяснивший Python
🔥1
Mypy — инструмент для статической типизации Python-кода, который помогает находить ошибки ещё до запуска программы. Теперь Python становится чуть ближе к строгим языкам, как Java или C#, но при этом остаётся таким же гибким!
Что даёт Mypy?
Ловит ошибки типов на этапе написания кода;
Улучшает читаемость за счёт явных аннотаций;
Работает без потерь в скорости (Python остаётся динамическим!);
Интегрируется с редакторами и CI/CD.
Установка:
Пример использования:
Как проверить код?
Если в коде есть ошибки типов, Mypy сразу их покажет и поможет избежать багов!
Идеально для больших проектов, где нужно поддерживать чистый и надёжный код.
GitHub/Инструкция
Разъяснивший Python
Что даёт Mypy?
Ловит ошибки типов на этапе написания кода;
Улучшает читаемость за счёт явных аннотаций;
Работает без потерь в скорости (Python остаётся динамическим!);
Интегрируется с редакторами и CI/CD.
Установка:
$ pip install mypy
Пример использования:
def add(x: int, y: int) -> int:
return x + y
print(add(5, 3))
print(add("5", 3)) # ОШИБКА! Mypy это увидит.
Как проверить код?
$ mypy script.py
Если в коде есть ошибки типов, Mypy сразу их покажет и поможет избежать багов!
Идеально для больших проектов, где нужно поддерживать чистый и надёжный код.
GitHub/Инструкция
Разъяснивший Python
Антипаттерн недели: Игнорирование
В Python важно гарантированно освобождать ресурсы (файлы, соединения, сокеты). Если этого не делать, возможны утечки памяти и зависание программы.
Используйте блок
Разъяснивший Python
finally
при работе с ресурсамиВ Python важно гарантированно освобождать ресурсы (файлы, соединения, сокеты). Если этого не делать, возможны утечки памяти и зависание программы.
Используйте блок
finally
или конструкцию with
для автоматического управления ресурсами.Разъяснивший Python
loguru.logger
Разъяснивший Python
loguru.logger
— это мощный и удобный логгер, который упрощает логирование в Python. Он поддерживает цветной вывод, автоматическое форматирование и удобное управление логами.Разъяснивший Python
pathlib.Path.resolve()
Разъяснивший Python
Path.resolve()
из модуля pathlib
позволяет получить абсолютный путь к файлу или директории, автоматически обрабатывая символические ссылки и относительные пути. Это удобный способ работы с файловой системой в Python.Разъяснивший Python
contextlib.suppress()
Разъяснивший Python
contextlib.suppress()
позволяет временно подавлять определённые исключения в блоке кода. Это удобная альтернатива try-except
, если нам не нужно обрабатывать ошибку, а просто игнорировать её.Разъяснивший Python
Код, который ускоряет сам себя!
Этот трюк позволяет Python-коду динамически оптимизировать свою работу, анализируя скорость выполнения и заменяя медленные части на более быстрые!
Как это работает?
Код запускает медленную функцию и измеряет время её работы.
Если код ещё не оптимизирован, он перезаписывает сам себя, заменяя медленный вызов на более быстрый.
При следующем запуске скрипт уже работает быстрее!
Где это можно использовать?
Автоматическая оптимизация кода.
Обучение Python-разработчиков динамическому изменению кода.
Создание самосовершенствующихся программ.
Разъяснивший Python
Этот трюк позволяет Python-коду динамически оптимизировать свою работу, анализируя скорость выполнения и заменяя медленные части на более быстрые!
Как это работает?
Код запускает медленную функцию и измеряет время её работы.
Если код ещё не оптимизирован, он перезаписывает сам себя, заменяя медленный вызов на более быстрый.
При следующем запуске скрипт уже работает быстрее!
Где это можно использовать?
Автоматическая оптимизация кода.
Обучение Python-разработчиков динамическому изменению кода.
Создание самосовершенствующихся программ.
Разъяснивший Python
💩1
Процентиль
Процентиль — это значение, ниже которого находится определённый процент наблюдений в наборе данных. Например, 75-й процентиль — это значение, ниже которого находится 75% данных. В данном примере продемонстрировано нахождение процентиля.
Разъяснивший Python
Процентиль — это значение, ниже которого находится определённый процент наблюдений в наборе данных. Например, 75-й процентиль — это значение, ниже которого находится 75% данных. В данном примере продемонстрировано нахождение процентиля.
Разъяснивший Python
contextlib.nullcontext()
Разъяснивший Python
contextlib.nullcontext()
создаёт пустой контекстный менеджер, который не выполняет никаких действий. Это полезно, когда нужно условно использовать with
, но в некоторых случаях контекстный менеджер не требуется.Разъяснивший Python
Корреляция
Корреляция — это статистическая мера, показывающая взаимосвязь между двумя переменными. Она измеряется коэффициентом корреляции, который может принимать значения от -1 до 1.
Значение 1 говорит о положительной линейной зависимости (чем больше X, тем больше Y). Значение -1 говорит об отрицательной линейной зависимости (чем больше X, тем меньше Y). Значение 0 означает отсутствие линейной зависимости.
Разъяснивший Python
Корреляция — это статистическая мера, показывающая взаимосвязь между двумя переменными. Она измеряется коэффициентом корреляции, который может принимать значения от -1 до 1.
Значение 1 говорит о положительной линейной зависимости (чем больше X, тем больше Y). Значение -1 говорит об отрицательной линейной зависимости (чем больше X, тем меньше Y). Значение 0 означает отсутствие линейной зависимости.
Разъяснивший Python
👍2
Как быстро понять, что делает незнакомый код в Python? (ч.1)
Когда ты только начинаешь изучать Python, иногда встречаешь незнакомый код и не понимаешь, что он делает. Вот быстрый способ разобраться!
Используем help()
Встроенная функция help() показывает описание модуля, функции или класса.
Совет: Если help() выводит слишком много текста, нажми q, чтобы выйти.
Разъяснивший Python
Когда ты только начинаешь изучать Python, иногда встречаешь незнакомый код и не понимаешь, что он делает. Вот быстрый способ разобраться!
Используем help()
Встроенная функция help() показывает описание модуля, функции или класса.
Совет: Если help() выводит слишком много текста, нажми q, чтобы выйти.
Разъяснивший Python
Как быстро отладить Python-код без принтов?
Когда новички ищут ошибки в коде, они часто пишут кучу
Используем
С версии Python 3.7+ есть встроенная команда
После запуска можно вводить команды прямо в консоли! Например:
Лучше, чем десятки
Работает прямо в коде без доп. инструментов
Разъяснивший Python
Когда новички ищут ошибки в коде, они часто пишут кучу
print()
, чтобы понять, что происходит. Но есть лучший способ! Используем
breakpoint()
С версии Python 3.7+ есть встроенная команда
breakpoint()
, которая останавливает выполнение кода и позволяет исследовать переменные в режиме отладки.После запуска можно вводить команды прямо в консоли! Например:
print(a)
– узнать значение переменной a.print(b)
– проверить значение b.continue
– продолжить выполнение кода.Лучше, чем десятки
print()
Работает прямо в коде без доп. инструментов
Разъяснивший Python
👍3