Обновить
792.78

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Базовые аспекты условных операторов в Python

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели6.3K

Привет, Хабр! Меня зовут Дмитрий, я аналитик данных и программный эксперт на курсе Python для анализа данных в Яндекс Практикуме. Решил поделиться тем, как реализованы условные операторы в Python: статья поможет вам составить впечатление о Python и улучшит ваше понимание условных операторов, при этом изложенные ниже принципы могут помочь и в других языках программирования и в формулах Excel или гугл-таблиц.

Читать далее

Антипаттерны тестирования: как не стоит писать тесты в Python. Часть 1

Время на прочтение5 мин
Охват и читатели4.2K

Тестирование — это не просто написание кода, который проверяет другой код. Это в самом деле настоящее мастерство, требующее тщательной проработки, чтобы избежать ошибок, способных затруднить работу.

В этой статье разберемся с тремя основными антипаттернами тестирования в Python.

Читать далее

Netflix знает о нас все?

Время на прочтение11 мин
Охват и читатели2.1K

От проката дисков до рекомендательных систем

Представьте себе, сколько компании вкладывают, чтобы подманить вас к товару. Сегодня будто не спрос рождает предложение, а предложение взывает к желаниям.

Рекомендательные системы Netflix разрабатывались для повышения общего стримингового времени, продления подписки. Нужно, чтобы поток сериалов так и лился в ваши головы, а вы неустанно тыкали на кнопку подписки каждый месяц или не вздумывали даже ее отменять.

Хотя все начиналось с DVD дисков и проката…

История Netflix началась в 1997 году, когда Рид Хастингс и Марк Рэндольф основали компанию в Скотс‑Вэлли, Калифорния. Первоначально Netflix позиционировалась как онлайн‑сервис по аренде DVD‑дисков, используя интернет для заказа и почтовую службу для доставки.

Читать далее

Telegram bot, взаимодействующий с API OpenAI без проксирования. Разработка на Python

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели10K

Создадим бота, использующего API OpenAI. И так развернем его на сервере, чтобы не настраивать проксирование запросов к API OpenAI (который заблокирован для пользователей из России), и не использовать иностранные VPS.

Читать далее

Как использовать RFID считыватель с помощью Python

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели1.4K

Возникла потребность сделать СКУД сервис на базе считывателей RFID меток Impinj R420. Поискав готовые варианты доступные для работы с Python наткнулся только на Impinj Speedway Connect — ПО, которое умеет слать считанные метки в реальном времени на ваш http API (например FastApi или Flask) и работает на RFID считывателях Impinj Speedway. Стоимость лицензии составляет около $250 за считыватель. Без лицензии вы можете использовать Speedway Connect в демонстрационном режиме с ограничением на 500 считываний меток до перезагрузки устройства.

В этой статье вы узнаете, как использовать и подключить RFID считыватель поддерживающий протокол LLRP, используя только Python. Мы подробно рассмотрим все шаги, от подключения считывателя к роутеру до настройки конфигурации и обработки меток.

Читать далее

Использование Manim + Python для визуализации. Перестановка (комбинаторика)

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели6.1K

Несмотря на то, что математика сегодня — это глубокий андерграунд, работы 3Blue1Brown вдохновляют и пробуждают внутри что‑то из далёкого детства, где весь мир был непостижимой игровой площадкой, а из кислого были только муравьиные жопки. Чтобы хоть немного прикоснуться к прекрасному, мною была сделана попытка визуализировать простую формулу из комбинаторики. Делюсь опытом.

Читать далее

Недвижимость и ее инфляционная «защищенность» в реальных цифрах

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели4.4K

Статья посвящена небольшому личному исследованию по изменению стоимости квадратного метра в Варшаве, Минске, Москве и Санкт-Петербурге. Для простоты и скорости везде использовал chatgpt-4 с последующей ручной перепроверкой всех выдаваемых значений. Будет много неожиданных результатов и занимательных графиков, так что приступим!

Читать далее

Как я решил сделать серию видео про устройство интерпретатора CPython

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели4.3K

Привет, Хабр!

Давайте знакомиться: меня зовут Никита Соболев, я core‑разработчик CPython, mypy и typeshed. Некоторое время назад я понял, что на русском языке довольно мало контента про устройство CPython внутри. В основном доклады с конференций и статьи. Где‑то про память, где‑то про GIL, где‑то про парсер. Но чтоб системно и по всем основным частям в одном месте — такого я не нашел.

И решил сделать своё! Под катом я расскажу, как я делаю «Лучший курс по Питону»* на ютюбе. Почему он бесплатный. И почему он такой, какой есть. А еще я расскажу, какая польза будет разработчикам от его просмотра.

Читать далее

Создание собственного API на Python (FastAPI): Авторизация, Аутентификация и роли пользователей

Время на прочтение19 мин
Охват и читатели40K

Друзья, приветствую! К сожалению, не хватает времени, чтобы чаще публиковаться, и надеюсь, что вы ждали этой статьи.

Как вы поняли из названия, сегодня мы поговорим про авторизацию и аутентификацию. Прежде чем вы приступите к прочтению статьи, настоятельно рекомендую вам ознакомиться с прошлым материалом по теме разработки собственного API через FastApi.

Читать далее

Как мы Zabbix с MaxPatrol подружили

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели4.5K

Здравствуйте! Меня зовут Игорь, и я руковожу несколькими направлениями в команде DevOps-инженеров, включая направление мониторинга.

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

Возьмите вкусняшек, чайку и присаживайтесь поудобнее.

Читать далее

Работает — не трожь: зачем обновлять Python в долгоживущих проектах

Время на прочтение15 мин
Охват и читатели14K

Всем привет! Меня зовут Сергей Яхницкий. Я пишу на Python уже больше шести лет, техлид в Яндекс Такси, Python-евангелист и член Python-комитета Яндекса (аналог Python Steering Council).

Человек я простой, звёзд с Гитхаба не хватал: до того, как я устроился в Такси, я мирно писал маленькие бэкенды на Python. А потом меня прорвало: кодогенерации, CI/CD, кучи тестов, монорепа и прочее. Вот тут-то моя питоничья душа и воспряла. Решил я всё автоматизировать, обновить всё, что движется, а что не движется — подвигать и обновить. Из этого вышел мой рассказ.

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

Читать далее

Глубокое погружение в хуки pytest: как и зачем их использовать

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели4.5K

pytest — один из самых популярных и мощных инструментов для тестирования в Python. Помимо своей простоты и выразительности, он предлагает мощный механизм расширения через хуки. В этой статье мы разберем, что такое хуки в pytest, как они работают, и как их можно использовать для настройки и расширения поведения вашего тестового окружения.

Читать далее

Компилятор за выходные: наконец-то ассемблер

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6.8K

Продолжаем разговор об игрушечном компиляторе мной придуманного простейшего языка wend. На этот раз мы добрались до определённой вехи: наконец-то будем генерировать не питоновский код, а ассемблерный.

Ну а когда оно заработает, предлагаю решить задачу: как сэмулировать побитовые операции and-not-xor-or при помощи четырёх арифметических.

Читать далее

Ближайшие события

Парсинг Telegram-канала: Извлечение id комментаторов. Python + Telethon

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели8.5K

Список подписчиков тг‑канала часто представляет собою священную тайну и просто так никто не станет делиться паствой трафиком. Поэтому получить конкретный список людей сложно, но вот комментаторов под постами никто не скрывает (возможно ли это?).

В статье приведён и разобран (полный и рабочий) скрипт, позволяющий автоматизированно собирать простую статистику о тг‑канале: список id комментаторов с соответствующими количествами комментариев от каждого.

Читать далее

Программируем систему окружающей среды из игры Divinity: Original Sin 2 на Python

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели5.2K

В этой статье мы попробуем запрограммировать логику работы поверхностей из Divinity: Original Sin 2, ролевой игры с пошаговой боевой системой от создателей Baldur's Gate 3. Суть системы в том, что заклинание или предмет может создать в игровом мире поверхность (облако пара, лёд) из пива, яда, нефти, огня и т. д. Каждая поверхность по‑своему взаимодействует с персонажами. Более того, под воздействием других заклинаний или предметов поверхности будут динамически меняться — их можно благословить или проклясть, прогреть или заморозить, наэлектризовать или полностью уничтожить.

Читать далее

Исследуя мир изображений: PicTrace и искусственный интеллект в действии

Уровень сложностиСложный
Время на прочтение5 мин
Охват и читатели1.6K

.В современном мире, где количество визуальной информации растет с каждым днем, умение быстро и точно находить аналогичные изображения становится все более важным. Представьте, что вы можете загрузить изображение, и в считанные секунды получить список самых похожих на него картинок из большой базы данных. Звучит интересно? Именно этого я добиваюсь достичь в своём веб‑приложение — PicTrace.

Что же такое PicTrace и как эта платформа помогает решать такие задачи? Каким образом она использует мощь OpenCV и TensorFlow для обработки изображений? Почему сочетание структурного сравнения и ключевых точек делает мой подход интересным?

Читать далее

Бутстрап и доверительные интервалы: от теории к практике на Python

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели8.3K

Привет!

Бутстрап — мощный статистический метод, позволяющий оценить распределение выборочных статистик. В Data Science бутстрап применяется в большом спектре задач.

В статье я постараюсь понятным языком рассказать про особенности, ограничения и сценарии применения бутстрапа, а также я познакомлю вас с различными схемами бутстрапа: Эфронов интервал (простой, но дает смещенную оценку), интервал Холла (несмещенный за счет центрирования) и t-процентильный интервал (несмещенный, шире других, лучшая асимптотика).

Более того, в статье мы реализуем функцию бутстрапа на Python и проведем небольшой эксперимент с помощью разных схем бутстрапирования.

Читать далее

Простой бот-модератор на Aiogram 3.x

Время на прочтение12 мин
Охват и читатели6.1K

Приветствую, в этой инструкции я затрону тему создания простого бота модератора, которого мы научим выдавать и снимать блокировку и разрешение на отправку сообщений пользователю на время, после чего развернём на облачном сервисе.

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

Читать далее

Делаем карманного аналитика данных с помощью OpenAI Assistants API и Code Interpreter в Telegram

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели4.7K

Языковая модель генерирует текст, но она не может проводить сколько‑нибудь сложные математические вычисления или анализ данных, она просто не предназначена для этого. Однако, модель может генерировать код и очень хорошо. Что, если давать модели задание, для выполнения которого она сгенерирует программный код, он исполнится в изолированной среде разработки, и полученный результат модель уже использует для генерации ответа? Именно эту задачу и выполняет Code Interpreter.

Читать далее

Обзор и гайд по Tortoise ORM: собрал в одну статью все, что надо знать об инструменте и своем опыте работы с ним

Уровень сложностиСредний
Время на прочтение26 мин
Охват и читатели24K

Привет, Хабр! Меня зовут Даниил Лихачев, я Python backend developer в диджитал-продакшене Далее. Сегодня я хотел бы представить вашему вниманию асинхронную библиотеку для работы с базами данных под названием Tortoise ORM. Это обзорная статья, чтобы показать, что из себя представляет данная библиотека и для каких проектов она подойдет. Также на основе своего опыта постараюсь осветить аспекты, в которых Tortoise ORM хороша и удобна, а также те, в которых ее возможностей может не хватать и как это обойти. Также бонусом предоставлю свой шаблон в стеке FastAPI + Tortoise ORM.

Читать далее