Обновить
797.71

Python *

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

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

Увеличиваем размер выборки и прокрашиваем серые метрики: неочевидная ошибка при проведении А/B — тестов

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

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

Читать далее

Что такое Puppeteer и как его использовать для веб-скрапинга | Полное руководство 2024

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

Это полное руководство расскажет о том, что такое Puppeteer и как эффективно использовать его для веб-скрапинга

Читать далее

7 продвинутых приемов pandas для науки о данных

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

Pandas — это основная библиотека для работы с данными. Вот несколько приёмов, которые я использую, чтобы быстрее и проще выполнять повторяющиеся задачи по работе с данными.

Читать далее

Дополнение к Litchi

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

Почитав эту статью: https://habr.com/ru/articles/684858 (особенно заинтересовали Waypoints) и обзаведясь коптером DJI, пришел к выводу - да, классно, здорово, но не удобно. Если стоит задача облететь и снять видео поля площадью пару десятков гектаров, то ставить ручками точки маршрута не очень удобно. Занимает много времени.
///

Читать далее

Телеграм не бот, REST API wrapper для управления аккаунтом но не ботом

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

Давно пишу ботов для телеграмм, использую golang. Понадобился функционал - сканировать каналы по ссылке. Бот такое не может, это уже более сложное апи, порылся - нашел библиотеку на golang, попробовал - сложно. Нашел на питоне - проще. Но на питоне не хочется. Так родилась идея сделать простую обертку REST API для основного функционала: вступить в группу, прочитать сообщения, узнать информацию о группе, написать сообщение, и чтобы курлом все работало...

Читать далее

Разбей и властвуй: как создать кастомный токенизатор в SpaCy

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

Привет, Хабр! В этой статье расскажем вам о том, как создавать собственные токенизаторы с SpaCy. Да-да, тот самый SpaCy, который мы все знаем и любим.

Стандартные токенизаторы хороши, но иногда требуется что-то особенное. Например, разбивать текст на токены по специфическим правилам или обрабатывать экзотические языки программирования (да-да, я смотрю на тебя, Brainfuck).

Читать далее

30k аудиозаписей: наводим порядок

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

Зачем писать дневник, если можно его надиктовывать? Казалось бы, здравая мысль, но как потом с ним работать? И нужен ли он вообще в таком виде? Сейчас есть довольно большое количество программ, которые сразу сделают speech‑to‑text, и проблемы не будет. А что, если такая идея возникла «‑дцать» лет назад, когда деревья были большими, а в телефонах только‑только появилась функция «диктофон»? За многие годы в нашей домашней видеотеке накопилось более 30 000 таких записей. Пришла пора разложить всё по полкам, конечно же, с «преферансом и куртизанками».

Читать далее

Кроссплатформенные приложения на Python с Flet и FastAPI: Полное руководство по разработке

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

Сегодня я покажу вам, что для создания полноценных кроссплатформенных приложений достаточно одного языка — Python. С помощью всего нескольких библиотек и фреймворков можно легко обойтись без JavaScript для веб-разработки, без Kotlin и Swift для мобильных приложений и даже без C++ для десктопных программ. В этой статье разберем, как, используя Flet и FastAPI, можно создавать мощные и удобные решения для любой платформы!

Читать далее

MoexBuilder: как я создаю библиотеку на Python. Часть 3

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

Привет, Хабр! Продолжаю рассказывать, как я создаю библиотеку на Python. В этой статье я расскажу о том, как мне удалось структурировать проект, как был реализован функционал получения динамики по инструменту за указанный период - dynamics(), а также о том, как была добавлена возможность генерации простых графиков.

Читать далее

Pygame для начинающих программистов. Статья вторая. События

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

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

Разделим его на три условных раздела:

Читать далее

Tech каналы Telegram

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

Телеграм сейчас является основным источником контента для многих. У Хабра тоже есть канал t.me/habr_com, его читает более 100 000 подписчиков. Кроме этого, о технологиях есть тысячи других каналов. Сколько их? Какая у них аудитория? Где найти данные? Разберемся в статье.

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

Существуют агрегаторы данных телеграм типа tgstat (https://tgstat.ru/). Один из способов - парсинг данных агрегаторов. Варианты с ботами, виртуальными аккаунтами показались более затратными, поэтому парсил несколько агрегаторов.

Итак, посмотрел ряд агрегаторов, взял на пробу три датасемпла. Самым адекватным показался семпл tgstat, поэтому, остановился на нем. В сервисе надо регистрироваться по телеграм аккаунту. Контент динамический, то есть, подгружается по клику. В парсинге всех данных не было смысла - важно было посмотреть что получится на семплах. Спарсил несколько категорий RU домена.

Сегодня расскажу про tech каналы с этой страницы (https://tgstat.ru/tech). Это каналы категориии 'Технологии', Россия. Периодически читаю каналы этой категории, ну и канал Хабра там есть. Поэтому, реллевантно будет здесь расказать именно о технологических каналах.

Читать далее

Автоматизированное тестирование API с использованием Python. Работа с JSON и JsonPath

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

JSON — один из самых распространённых форматов данных, используемых для передачи и получения данных в современных API. Важно глубоко понять его. 

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

Читать далее

Не бойтесь потоков в Python, они не кусаются

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

Привет, любитель Python!

Слышал о потоках, но чувствуешь себя немного неуверенно? Не волнуйся! Потоки в Python — это не про силу джедаев. Это хороший инструмент, который, кстати, вполне дружелюбен, если знать основные правила общения с ним. Правда, у потоков в Python есть свои нюансы, и часто можно услышать пугающее слово GIL. Но не спеши пугаться и бежать в сторону async-кода! Потоки в Python отлично работают в задачах ввода-вывода и могут здорово ускорить выполнение твоей программы, если применять их грамотно.

Эта статья — как раз для тех, кто хочет понять потоки с нуля: разберём, для чего они нужны, когда стоит их использовать, а главное — как не наломать дров.

Читать далее

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

Состояние производительности Python 3.13: Free-Threading

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

CPython 3.13 был выпущен две недели назад и стал одним из наиболее сфокусированных на производительности релизов за последнее время. Пробежавшись по release notes, я заметил несколько фич, которые могли бы повлиять на производительность.

В этой статье мы сфокусируемся на free‑threaded режиме и посмотрим, как его использовать и как он может влиять на производительность.

Читать далее

Как я настраивал меню выхода в Qtile

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

Некоторое время назад я, в силу ряда причин, решил перейти со стандартного DE на один из оконных менеджеров (для тех, кому интересно, archwiki), изначальным дистрибутивом был выбран ArcoLinux, так как он обладал расширенным репозиторием Arch, который включал в себя собственные пакеты команды ArcoLinux (в т.ч. меню archlinux-logout для выхода в спящий режим, выхода из системы и т.д.), а также предоставлял большие возможности по выбору пакетов, изначально установленных в системе, и настроенных оконных менеджеров (т.к. настраивать их с нуля, зачастую, очень долго и муторно, на мой взгляд).

Читать далее

Pygame для начинающих программистов. Статья первая

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

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

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

Библиотека Pygame, в свою очередь, предоставляет мощный инструментарий для создания 2D-игр на Python. Она упрощает работу с графикой, звуком и взаимодействием с пользователем, позволяя сосредоточиться на логике игры и дизайне. С Pygame мы будем реализовать свои идеи создавая игровые механики.

В этой серии статей мы погрузимся в увлекательный мир разработки игр на Python с использованием Pygame. Мы здесь повторим основы программирования, создадим свои первые игры и получим навыки, которые будут полезны не только в разработке игр, но и в любых других областях программирования. В общем приготовимся к приключению, полному творчества, обучения и веселья!

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

Читать далее

Написание ETL пайплайна при помощи airflow, rabbitmq и postgres

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

В данной статье мы рассмотрим взаимодействие apache airflow, rabbitMQ и postgreSQL. Научимся правильно устанавливать соединения между ними и напишем базовый ETL.

Читать далее

MoexBuilder: как я создаю библиотеку на Python. Часть 2

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

Привет, Хабр! Продолжаю рассказывать о том, как я создаю библиотеку на Python. В этой статья я расскажу о том, как реализовал взаимодействие с ISS MOEX, используя асинхронный подход, а также о том, как был добавлен функционал interval().

Читать далее

MoexBuilder: как я создаю библиотеку на Python. Часть 1

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

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

Читать далее

Пишем небольшое приложение на Python для повышения продуктивности с помощью ИИ и BotHub API

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

Прошла важная онлайн-встреча, задачи распределены, идеи обсуждены, а кто что сказал — уже и не помню. Кажется, что чтобы ничего не упустить, нужен отдельный человек, который записывает все за всеми и делает отчеты. Хороший вариант — обернуть это в скрипт, что мы с вами и сделаем.

В этом туториале я покажу, как создать приложение для автоматического анализа встреч и составления отчетов с использованием API BotHub (Whisper-1 + Claude 3.5 Sonnet). Это приложение будет распознавать речь с аудиозаписей, выделять ключи — кто что сказал и какие задачи в целом обсудили — и составит отчет, включая формат ПДФ.

Читать далее

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