Обновить
609.38

Python *

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

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

VoxShare — LAN-аудиочат с Push-to-Talk и мультикастом, без серверов и аккаунтов

Время на прочтение2 мин
Количество просмотров3K

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

Хочу поделиться своим open-source проектом — VoxShare. Это настольное приложение для голосовой связи по локальной сети, построенное на UDP Multicast и кодеке Opus. Без серверов, аккаунтов и привязки к Интернету — только вы и ваши коллеги в одной сети.

Проект актуален для:

Читать далее

Python Day на PHDays — не только доклады

Время на прочтение4 мин
Количество просмотров1.1K

В первой статье из серии про Python Day на Positive Hack Days мы говорили о том, какие доклады ожидаются на конференции. В этой статье мы расскажем о нововведениях этого года: битвах технологий и круглом столе. Битвы технологий — это короткие динамичные дискуссии, посвященные разным аспектам языка Python, которые будут проходить в течение дня на конференции. Далее несколько слов о том, чему будут посвящены битвы, и о том, кто примет в них участие ⚔️

Читать далее

Вторая жизнь для ретроноутбука. Пишем клиент Ollama на Python + Tkinter и Delphi 7 для Windows Vista

Время на прочтение8 мин
Количество просмотров6.3K

Салют, %USERNAME%. Признаюсь, я очень люблю старые лэптопы ThinkPad. В те времена, когда брендом владела IBM, эти аппараты восхищали своей продуманностью и функциональностью. Цена на них кусалась, но ты точно знал, что за строгим дизайном скрывается мощное «железо» и отличные инженерные решения. Чего стоила подсветка клавиатуры ThinkLight (познакомился с ней на R61i), которая позволяла с комфортом работать в поезде или самолете, не напрягая других пассажиров включением света. Ну а трекпойнт мне до сих пор нравится больше, чем любой крутой тачпад.

Развитие операционных систем и технологий оставило старые ThinkPad за бортом. Разумный предел для моего X41 Tablet — Windows Vista. Под нее есть все драйверы устройств, и она способна запускать большинство игр и приложений, написанных для Windows XP. Но в современных условиях, когда главным инструментом пользователя стал веб-браузер, эта система безнадежно устарела.

И тут ко мне пришла безумная идея: а что, если подарить такому ноутбуку вторую жизнь и дать возможность работать с современными нейросетями? Разумеется, ресурсов на полноценный инференс не хватит, но вот написать простой клиент для взаимодействия с Ollama — почему бы и нет. В итоге я получу ноутбук, который позволит мне общаться с нейронными сетями и вновь подарит удовольствие от использования. Что получилось из этой затеи, как раз и расскажу дальше.

Читать далее

Обработка геоданных для ML-задач. Часть 3: агрегирование данных и оценка пространственных шаблонов

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

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

Важно учитывать, что агрегирование упрощает анализ, но «схлопывает» внутреннюю вариативность данных, типа как усреднённая температура по больнице может скрывать локальные перегретые серверные. Существует, по крайней мере, три метода пространственного агрегирования...

Читать далее

Измерение покрытия UI тестами

Время на прочтение22 мин
Количество просмотров4.3K

Как понять, что реально делают ваши UI автотесты?

ui-coverage-tool — это инновационный инструмент нового поколения, не имеющий аналогов. Он визуализирует покрытие прямо в браузере, работая с реальным приложением. История по каждому элементу, фильтры по действиям, динамика и полная наглядность — всё, чтобы не просто тестировать, а понимать и улучшать.

Читать далее

Как отправить много страниц сайт на переиндексацию в Google Indexing API и автоматизировать процесс

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.8K

Переиндексация URL в Google — важный инструмент в руках SEO-специалиста и маркетолога. Если вы внесли изменения на сайте, добавили новые страницы или изменили структуру — сообщить об этом Google можно руками в интерфейсе. Примерно вот так:

Читать далее

Не доверяйте groupby().first()

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

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

В этой статье рассмотрим, почему groupby().first() в pandas — не такая уж безопасная и очевидная штука, как может показаться. Особенно когда нужно достать первую строку группы в точности, как она была в датафрейме — с NaN, с порядком, без сюрпризов.

Но для начала рассмотрим отличия first от других подобных методов.

Читать далее

Говорим с Битрикс24 на языке ИИ: представляем опенсорс MCP-сервер для LLM-интеграции

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3.3K

Привет! Мы — партнеры Битрикс24 и создаем для бизнеса приложения с генеративным ИИ, интегрируя их с корпоративными порталами.

В этой статье мы расскажем о созданном нами решении, которое позволяет любым разработчикам легко подключать свои чаты и другие приложения с LLM-моделями к Битрикс24. Речь идет о MCP-сервере — помощнике для ИИ, который позволяет получать из портала Битрикс24, например из раздела CRM, точные данные для ответа пользователю.

Читать далее

Графика и Python: 6 GUI-инструментов, которые пригодятся разработчикам в 2025 году

Время на прочтение33 мин
Количество просмотров28K

Привет, Хабр! Меня зовут Леша Жиряков, я техлид бэкенд-команды витрины KION, а еще в МТС я возглавляю Python-гильдию.

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

Читать далее

UI автотесты на Python с запуском на CI/CD и Allure отчетом. PageObject, PageComponent, PageFactory

Время на прочтение43 мин
Количество просмотров15K

Разбираем, как писать масштабируемые и читаемые UI автотесты на Python с использованием паттернов PageObject, PageFactory и PageComponent. Разберем на атомы как устроены эти подходы, когда их применять и чем они отличаются. Всё это — на примере тестового проекта UI Course с CI/CD и наглядными отчетами в Allure.

Читать далее

Как создавать A/B-тесты SMS-рассылок с нейросетью DeepSeek

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров965

Привет, Хабр. В этой статье поможем владельцам бизнесов и маркетологам в два клика с помощью нейросети получить хорошие тексты для A/B-тестирования SMS-рассылок и разослать выбранные варианты контактам из CRM.

Для генерации текстов используем API DeepSeek, для рассылок — SMS API от МТС Exolve, а контакты берём из CRM-системы «Битрикс24».

Читать далее

Личный ИИ-ассистент на ваших данных. Часть 2: Веб-интерфейс, авторизация и стриминг ответов от ИИ

Время на прочтение27 мин
Количество просмотров7.5K

Продолжаем тему, которая вызывает живой интерес у многих разработчиков и энтузиастов ИИ — создание собственного ассистента на базе ChatGPT или DeepSeek с использованием личной базы знаний.

В этой части статьи мы шаг за шагом превращаем консольную заготовку из первой части в полноценный веб-сервис:
— реализуем авторизацию
— создаём веб-чат с выбором нейросети
— интегрируем всё через FastAPI
— готовим к деплою

Если вы хотите, чтобы ваш ИИ-ассистент выглядел и работал как настоящий сервис — поехали!

Читать далее

Некоторые особенности создания диаграммы Санки (Sankey Diagram) на Python, библиотека plotly

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров3.2K

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

Читать далее

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

Оповещение о РО через колонки Яндекса (Ну или в целом получение сигналов в УДЯ)

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров7.8K

Система и алгоритм оповещения о ракетной опасности с использованием Яндекс Станций. Пользователь вручную создает сценарии для устройств «Умного дома Яндекса» с использованием «Лампочки», которая включается при сигнале о РО и выключается при сигнале ОТБОЙ.

Стэк: Python, telethon, aiogram 3.x, mqtt, postgresql.

Читать далее

Как обсчитать RFM-анализ за 5 шагов

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров521

RFM анализ это

Общий алгоритм обсчета

1 Построить из исходного датасета таблицу пользователей, определив для каждого количество транзакций, общую сумму платежей и дату первой и последней операции.
2 Вычислить дополнительные показатели
3 Определить границы RFM рангов и присвоить их каждому пользователю
4 Построить RFM таблицу, сгруппировав пользователей по рангам.
5 На основе RFM таблицы построить тепловую карту

Читать далее

Простой пример использования в ПЛК нейросетевого контроллера

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров4.9K

Современный мир движется к объединению технологий: промышленной автоматизации и искусственного интеллекта. Но для меня, занимающегося программированием в сфере АСУ ТП, было трудно понять, как на ПЛК, с его скромными техническими характеристиками и средой Codesys или TIA Portal можно применить технологии ИИ. На форумах готового решения не нашел, но проникся мыслью, что лучше обучить нейросеть на Python, а затем готовые веса и структуру перенести в Codesys. Я решил использовать OpenAI Gym, задачу CartPole. Это классическая задача обучения с подкреплением, где цель агента состоит в том, чтобы удерживать шест в вертикальном положении, выбирая действия (движение влево (0) или вправо (1)), на основе текущего состояния системы. План действий: для получения весов написать класс нейросети на PyTorch с использованием пакет DEAP.  После этого написать Modbus TCP сервер на Python с окружающей средой CartPole, подсоединиться к нему с помощью ПЛК. Полученные данные обрабатывать в ПЛК и передавать сигнал, который будет управлять тележкой, на сервер.

Читать далее

Game Engine 3 — оболочка для визуального программирования игр на Python (от идеи до реализации)

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

Привет, Хабр! Сегодня я хочу рассказать о своём проекте — «Game Engine 3», программной оболочке для создания двумерных игр и приложений.

Game Engine 3 — это инструмент для создания 2D‑игр с физикой и анимацией. С открытым исходным кодом, интуитивным редактором визуального программирования на основе нодов и возможностями работы с графикой, физикой и анимацией, он подходит как для новичков, так и для профессионалов. В этой статье разберем, что делает эту оболочку уникальной.

Читать далее

Почему @patch из unittest.mock ломает вам тесты, если не указать autospec=True

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

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

Сегодня разберёмся, почему без autospec=True ваш безобидный @patch из unittest.mock может превратить зелёный репорт в мину замедленного действия.

Смысл patch() прост: отрезаем внешний мир, подсовываем фейковый объект и гоняем логику изолированно. Но если не включить autospec, мок превращается в пластилин — к нему прилипает любой метод, любые аргументы, и тесты радостно хлопают ладоши, даже когда в коде опечатка или нарушена сигнатура.

Читать далее

F(), Func() и никаких циклов: как Django думает в SQL

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

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

Сегодня рассмотрим, как использовать F()-экспрессии и Func()-обёртки в Django для того, чтобы выполнять арифметику, условия и преобразования не в Python, а на стороне базы данных. Один SQL-запрос может заменить десятки строк кода не теряя в качестве кода.

Читать далее

Как я начал учить Go и правда ли он похож на Python. Мой личный опыт

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

Всем привет! Меня зовут Иван, я программирую на Python и недавно решил освоить новый ЯП. Долго думал, какой выбрать. В итоге решил довериться утверждению, что Python во многом похож на Go — на нем и остановился.

Ниже поделюсь личным опытом изучения языка — и да, я еще продолжаю его осваивать. Расскажу, какие встретил различия между Python и Go в типах данных, преобразовании типов данных, подходах к обработке ошибок. А еще обсудим, какой ЯП быстрее и можно ли импортировать и выполнить код Go в Python. Надеюсь, этот пост будет интересен тем, кто тоже собирается освоить второй ЯП. Ну, let’s Go!

Читать далее

Вклад авторов