Парсер вакансий с hh.ru
Данный код позволит собрать вакансии по ключевым навыкам, проанализировать требования, и сравнить их с навыками из твоего резюме. Результат – отчет, какие скиллы есть, какие востребованы, чего не хватает.
Ссылка на код
#theory // Just Python
Данный код позволит собрать вакансии по ключевым навыкам, проанализировать требования, и сравнить их с навыками из твоего резюме. Результат – отчет, какие скиллы есть, какие востребованы, чего не хватает.
Ссылка на код
#theory // Just Python
Полезные библиотеки Python
Bandit — твой персональный багхантер в Python-коде!
Это не просто линтер, а брутальный инструмент аудита безопасности, созданный для того, чтобы находить уязвимости в твоём коде быстрее, чем это сделает реальный атакующий.
Что умеет:
Вычисляет слабые места, через которые можно слить данные или исполнить произвольный код.
Показывает проблемные строки с пояснениями: от банального
Подходит для проектов, CTF-подготовки и анализа чужих репозиториев.
Использование проще простого:
Результат? Прям как отчёт после Red Team-а: чётко и по существу.
GitHub/Инструкция
#theory // Just Python
Bandit — твой персональный багхантер в Python-коде!
Это не просто линтер, а брутальный инструмент аудита безопасности, созданный для того, чтобы находить уязвимости в твоём коде быстрее, чем это сделает реальный атакующий.
Что умеет:
Вычисляет слабые места, через которые можно слить данные или исполнить произвольный код.
Показывает проблемные строки с пояснениями: от банального
eval()
до серьёзных криптокосяков.Подходит для проектов, CTF-подготовки и анализа чужих репозиториев.
Использование проще простого:
$ bandit your_script.py
Результат? Прям как отчёт после Red Team-а: чётко и по существу.
GitHub/Инструкция
#theory // Just Python
Распознавание текста с документов
С помощью этого кода ты сможешь распознавать текст с документов на фотографиях. Работает все очень просто. Сначала принимаем фото документа. С помощью OCR распознаем текст. Затем фильтруем документ по типу: паспорт, ИНН, СНИЛС, ИПН и т.д. Предварительно нужно установить Tesseract OCR.
Ссылка на код
#theory // Just Python
С помощью этого кода ты сможешь распознавать текст с документов на фотографиях. Работает все очень просто. Сначала принимаем фото документа. С помощью OCR распознаем текст. Затем фильтруем документ по типу: паспорт, ИНН, СНИЛС, ИПН и т.д. Предварительно нужно установить Tesseract OCR.
Ссылка на код
#theory // Just Python
Удобный способ подавить ошибки через contextlib.suppress
Иногда нужно игнорировать определённые исключения, не захламляя код try-except. Для этого идеально подходит contextlib.suppress.
Итог:
suppress делает код чище, когда нужно спокойно обойтись без конкретных исключений. Особенно полезно в служебных операциях типа удаления или проверки.
#theory // Just Python
Иногда нужно игнорировать определённые исключения, не захламляя код try-except. Для этого идеально подходит contextlib.suppress.
Итог:
suppress делает код чище, когда нужно спокойно обойтись без конкретных исключений. Особенно полезно в служебных операциях типа удаления или проверки.
#theory // Just Python
FlashText — Быстрый поиск и замена строк
FlashText — это библиотека Python, которая позволяет быстро находить и заменять ключевые слова в строках. В отличие от стандартных методов поиска, таких как регулярные выражения, FlashText работает с целыми словами и значительно быстрее на больших текстах. Эта библиотека особенно полезна, если нужно обрабатывать огромные массивы текстовых данных.
FlashText — идеальный выбор для поиска и замены ключевых слов в текстах, когда производительность имеет ключевое значение.
Ссылочка на доку
#theory // Just Python
FlashText — это библиотека Python, которая позволяет быстро находить и заменять ключевые слова в строках. В отличие от стандартных методов поиска, таких как регулярные выражения, FlashText работает с целыми словами и значительно быстрее на больших текстах. Эта библиотека особенно полезна, если нужно обрабатывать огромные массивы текстовых данных.
FlashText — идеальный выбор для поиска и замены ключевых слов в текстах, когда производительность имеет ключевое значение.
Ссылочка на доку
#theory // Just Python
Сканер уязвимостей в веб-сайтах
Сделаем простой сканер уязвимостей. Он проверяет SSL-сертификат, HTTP-заголовки безопасности, а также открытые порты. Обрати внимание, это информационный сканер, а не пентест-инструмент.
Ссылка на код
#theory // Just Python
Сделаем простой сканер уязвимостей. Он проверяет SSL-сертификат, HTTP-заголовки безопасности, а также открытые порты. Обрати внимание, это информационный сканер, а не пентест-инструмент.
Ссылка на код
#theory // Just Python
Быстрое сравнение объектов через dataclasses
Если тебе нужно сравнивать экземпляры классов по значениям, а не по идентификаторам, используй @dataclass — это избавит от ручной реализации eq.
Итог:
@dataclass не только сокращает шаблонный код, но и позволяет автоматически сравнивать объекты по значению их полей — удобно и читаемо.
#theory // Just Python
Если тебе нужно сравнивать экземпляры классов по значениям, а не по идентификаторам, используй @dataclass — это избавит от ручной реализации eq.
Итог:
@dataclass не только сокращает шаблонный код, но и позволяет автоматически сравнивать объекты по значению их полей — удобно и читаемо.
#theory // Just Python
Распаковка аргументов с * и ** — элегантная передача параметров
Иногда нужно передать переменное количество аргументов в функцию или вызвать функцию с уже готовыми аргументами в виде кортежа или словаря. Python позволяет делать это красиво с помощью *args и kwargs.
Это особенно удобно, если вы оборачиваете функции, строите декораторы или работаете с конфигами.
Итог:
Использование * и позволяет гибко управлять аргументами и упрощает передачу данных в функции — лаконично и читаемо.
#theory // Just Python
Иногда нужно передать переменное количество аргументов в функцию или вызвать функцию с уже готовыми аргументами в виде кортежа или словаря. Python позволяет делать это красиво с помощью *args и kwargs.
Это особенно удобно, если вы оборачиваете функции, строите декораторы или работаете с конфигами.
Итог:
Использование * и позволяет гибко управлять аргументами и упрощает передачу данных в функции — лаконично и читаемо.
#theory // Just Python
Проверка типов во время разработки с typing.assert_type
Иногда полезно явно указать ожидаемый тип переменной — особенно при сложных аннотациях или когда IDE не даёт точной подсказки. Python 3.11+ предоставляет утилиту
Во время выполнения
Итог:
#theory // Just Python
Иногда полезно явно указать ожидаемый тип переменной — особенно при сложных аннотациях или когда IDE не даёт точной подсказки. Python 3.11+ предоставляет утилиту
typing.assert_type
для таких целей.Во время выполнения
assert_type
не делает ничего — он нужен только для анализа типизации инструментами, как mypy или Pyright.Итог:
assert_type
помогает быть уверенным, что типы совпадают с ожиданиями, и делает код более безопасным без влияния на производительность.#theory // Just Python
Ускорение многозадачности с concurrent.futures.ThreadPoolExecutor
Когда тебе нужно выполнить несколько I/O-зависимых задач (например, запросы к API или чтение файлов), но ты не хочешь возиться с asyncio, можно использовать ThreadPoolExecutor — просто и эффективно.
Итог:
ThreadPoolExecutor — мощный способ ускорить I/O-операции с минимальными усилиями. Особенно удобен, если не хочется переписывать проект под asyncio.
#theory // Just Python
Когда тебе нужно выполнить несколько I/O-зависимых задач (например, запросы к API или чтение файлов), но ты не хочешь возиться с asyncio, можно использовать ThreadPoolExecutor — просто и эффективно.
Итог:
ThreadPoolExecutor — мощный способ ускорить I/O-операции с минимальными усилиями. Особенно удобен, если не хочется переписывать проект под asyncio.
#theory // Just Python
Умный анализатор голосовых сообщений
Сделаем анализатор голосовых сообщений. С помощью его ты сможешь делать транскрипцию, анализировать длину, темп, эмоции аудиосообщения. Также возможна сводка сообщения и ключевые фразы. Для этого нам понадобится whisper – он преобразует речь в текст.
Ссылка на код
#theory // Just Python
Сделаем анализатор голосовых сообщений. С помощью его ты сможешь делать транскрипцию, анализировать длину, темп, эмоции аудиосообщения. Также возможна сводка сообщения и ключевые фразы. Для этого нам понадобится whisper – он преобразует речь в текст.
Ссылка на код
#theory // Just Python
Удаление дубликатов из вложенных списков
Иногда нужно удалить дубликаты из списка списков — но set тут не работает напрямую, ведь списки — неизменяемые. Есть простое решение!
Итог:
Для удаления дубликатов из списка списков — конвертируй во tuple, используй set, потом верни всё обратно. Быстро и без лишних циклов.
#theory // Just Python
Иногда нужно удалить дубликаты из списка списков — но set тут не работает напрямую, ведь списки — неизменяемые. Есть простое решение!
Итог:
Для удаления дубликатов из списка списков — конвертируй во tuple, используй set, потом верни всё обратно. Быстро и без лишних циклов.
#theory // Just Python
Pympler для мониторинга и анализа памяти
Библиотека мониторит и анализирует память, которая используется при исполнении кода программ на Python. Инструмент находит ее избыточное потребление, утечки и другие баги.
С помощью Pympler можно узнать все о размере и длительности процессов приложения на Python за время работы.
Ссылочка на доку
#theory // Just Python
Библиотека мониторит и анализирует память, которая используется при исполнении кода программ на Python. Инструмент находит ее избыточное потребление, утечки и другие баги.
С помощью Pympler можно узнать все о размере и длительности процессов приложения на Python за время работы.
Ссылочка на доку
#theory // Just Python
Bidict
Bidict — это библиотека Python, предоставляющая двунаправленное отображение данных и связанные с ним функции для естественной работы с однозначными отношениями.
#theory // Just Python
Bidict — это библиотека Python, предоставляющая двунаправленное отображение данных и связанные с ним функции для естественной работы с однозначными отношениями.
#theory // Just Python
Быстрая проверка скорости кода с timeit
Когда нужно узнать, какой из двух подходов быстрее — используй модуль
Итог:
Используй
#theory // Just Python
Когда нужно узнать, какой из двух подходов быстрее — используй модуль
timeit
.Итог:
Используй
timeit
, чтобы быстро сравнить производительность разных решений. Особенно полезно при выборе между похожими по смыслу, но разными по скорости подходами.#theory // Just Python
Умное логгирование исключений с exc_info=True
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог:
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
#theory // Just Python
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог:
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
#theory // Just Python
Полезные библиотеки Python
ART — минималистичная, но чертовски стильная библиотека для Python, с которой ты за секунду создашь красивый ASCII-логотип прямо в консоли.
Хочешь, чтобы скрипт приветствовал пользователя крутым заголовком?
Пишешь CLI-интерфейс или просто хочешь выделиться?
ART — это быстро, просто и эффектно.
Установка:
GitHub/Инструкция и примеры кода
#theory // Just Python
ART — минималистичная, но чертовски стильная библиотека для Python, с которой ты за секунду создашь красивый ASCII-логотип прямо в консоли.
Хочешь, чтобы скрипт приветствовал пользователя крутым заголовком?
Пишешь CLI-интерфейс или просто хочешь выделиться?
ART — это быстро, просто и эффектно.
Установка:
pip install art
GitHub/Инструкция и примеры кода
#theory // Just Python
Как использовать Pymystem3 для морфологического анализа?
Библиотека быстро и качественно распознает части речи и лексемы слова.
Третья версия Mystem содержит несколько важных улучшений, в первую очередь устранение неоднозначности частей речи
Ссылочка на доку
#theory // Just Python
Библиотека быстро и качественно распознает части речи и лексемы слова.
Третья версия Mystem содержит несколько важных улучшений, в первую очередь устранение неоднозначности частей речи
Ссылочка на доку
#theory // Just Python
Бесплатный мини-курс: освой базу тестирования за 72 часа
Ты выполнишь 3 реальных задачи из жизни Junior QA — поиски багов вручную, и с помощью ПО. Получишь проекты в портфолио, значимые для будущего работодателя.
Как это работает?
1. Регистрируешься — это абсолютно бесплатно.
2. В течение трёх дней проходишь уроки от эксперта в удобное для себя время.
3. Получаешь консультацию по профессии, обучению и рынку.
4. Понимаешь, подходит ли тебе тестирование, как начать карьеру и как выгодно выделиться среди новичков.
Получи 4 гайда + 3 проекта в портфолио за 3 дня — успевай до 30 апреля!
👉 Записаться бесплатно (осталось 12 мест).
Ты выполнишь 3 реальных задачи из жизни Junior QA — поиски багов вручную, и с помощью ПО. Получишь проекты в портфолио, значимые для будущего работодателя.
Как это работает?
1. Регистрируешься — это абсолютно бесплатно.
2. В течение трёх дней проходишь уроки от эксперта в удобное для себя время.
3. Получаешь консультацию по профессии, обучению и рынку.
4. Понимаешь, подходит ли тебе тестирование, как начать карьеру и как выгодно выделиться среди новичков.
Получи 4 гайда + 3 проекта в портфолио за 3 дня — успевай до 30 апреля!
👉 Записаться бесплатно (осталось 12 мест).
Использование __slots__ для экономии памяти
По умолчанию Python хранит атрибуты объектов в словаре (dict), что удобно, но затратно по памяти. Если вы создаёте множество однотипных объектов, можно использовать slots, чтобы ограничить список допустимых атрибутов и сократить потребление памяти.
#theory // Just Python
По умолчанию Python хранит атрибуты объектов в словаре (dict), что удобно, но затратно по памяти. Если вы создаёте множество однотипных объектов, можно использовать slots, чтобы ограничить список допустимых атрибутов и сократить потребление памяти.
#theory // Just Python