Обновить
485.95

Python *

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

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

Обработка результатов моделирования Fire Dynamics Simulator на Python (часть 2)

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

Здравствуйте меня зовут Роман, я занимаюсь обеспечение пожарной безопасности в зданиях и сооружениях более 15 лет, основной профиль моей деятельности — это моделирование развития пожара.

В основном моделирование развития пожара провожу в специализированном программном обеспечении Fire Dynamics Simulator (FDS), оно используется от Японии до США при обосновании отступлений требований пожарной безопасности.
 При моделировании развития пожара очень много времени занимает обработка результатов моделирования. В цикле статей я хочу поделиться способами обработки данных, которые использую при работе.
 
Статья ориентирована на специалистов, которые уже используют FDS в работе. Подробности моделирования развития пожара с помощью FDS в данной статьи не будут рассматриваться.

Эта статья — вторая из серии. Ссылка на первую статью.

Читать далее

Дивергенция как мера специфичности аудитории вашей пилотной механики

Время на прочтение11 мин
Количество просмотров687

Хабр, привет! На связи Никита и Егор, мы работаем над продуктовой аналитикой в дирекции по развитию программы лояльности Х5. В статье мы бы хотели рассказать вам о том, как можно использовать модификацию дивергенции Кульбака-Лейблера для ответа на вопрос, а насколько ваша пилотная аудитория специфична относительно генеральной совокупности всех клиентов, и какие могут быть «подводные камни».

Читать далее

Какой Python-фреймворк выбрать: Django, Flask или FastAPI?

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

Команда Python for Devs подготовила перевод статьи о том, какой фреймворк выбрать для веб-разработки на Python: Django, Flask или FastAPI. Django берёт надёжностью и готовой функциональностью, Flask — гибкостью и минимализмом, FastAPI — скоростью и современными возможностями. А какой из них ближе вам?

Читать далее

Предиктивная аналитика в нефтедобыче или как я проходил практику

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

В первые дни, проведённые в офисе, я ощутил всю прелесть онбординга в нефтянку. Тогда для меня каждое второе слово от коллег являлось новым и приходилось жёстко гуглить. УЭЦН, ПЭД, МРП, КВЧ, загрузка, НГДП, кусты, ВНР... Мне казалось, я попал в параллельную вселенную, где говорят на странном техническом диалекте. Мой наставник, видя мои широко открытые глаза только улыбался и говорил: «Ничего, через неделю всё поймёшь. Главное выучи, что такое VLP и IPR».

Читать далее

Напердолил целую игру

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

Уууу, давно хотелось чего-то простого, смешного и без лишних заморочек. Чтобы мемов побольше и можно было с пацанами погонять. В итоге получились "TANKOLINI NAPIERDOLKI".

Старый добрый монохромный экран, тетрис, мультиплеер и редактор карт для каждого. С другой стороны — всё на канвасе, с вручную отрисованными пикселями, без всяких ассетов и движков. Python на бэке, PostgreSQL для карт и Redis для игровых комнат. Обо всём этом — в статье.

Читать далее

Собираем «идеального душнилу»: как создать ИИ-агента, который завалит вашего чат-бота

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

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

Открыть окно

Визуализация управления памятью в Python: что творится внутри?

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

Python щедро раздаёт нам удобные абстракции. Создаёшь список, словарь или строку — и не думаешь, где под это выделилась память и как она потом освободится. Но внутри интерпретатора работает довольно сложный механизм, и он устроен не так, как в C или других языках.

Идея сделать приложение-визуализатор пришла после чтения книги CPython Internals. Там подробно объясняется, как устроены арены, пулы и блоки. Но пока читаешь текст, всё это воспринимается слишком абстрактно. Захотелось увидеть механику своими глазами: как память выделяется, как освобождается и почему иногда остаётся занята. Так и появился MemoryMonitorApp, а вместе с ним — эта статья.

Читать далее

Как мы освободили 20 ГБ в PostgreSQL без удаления данных

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

Команда Python for Devs подготовила перевод статьи о том, как можно освободить десятки гигабайт места в PostgreSQL без удаления данных и индексов. TL;DR: удаляем неиспользуемые индексы, чистим bloat, пересобираем таблицы и используем частичные индексы, чтобы хранить только то, что реально нужно.

Читать далее

Случайный ИИ успех: Как мы встроили нейросеть в приложение для автосервисов и сорвали куш с подписками

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

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

У нас был стандартный, почти шаблонный продукт: каталог услуг со средними по рынку ценами, модуль онлайн записи, карта с геолокацией мастерских, даже отзывы и рейтинги. Всё как у людей. Но проблема была в том, что мы были как все. А в условиях, когда на каждом углу есть аналоги, конкуренция идёт не за функционал, а за доверие и внимание пользователя. Люди заходили, смотрели прайс, звонили в пару мест и уходили. Удержание было низким, монетизация ещё ниже. Нужен был крючок. Не просто ещё одна кнопка в интерфейсе, а что то, что давало бы мгновенную, осязаемую пользу и решало реальную боль.

И вот на одной из планерок, где мы в очередной раз ломали голову над тем, как увеличить конверсию, я бросила: «А что, если сделать так, чтобы пользователь мог просто сфоткать свою проблему потёкшее масло, скрипящие тормоза, вмятину на бампере а мы ему примерно назовём поломку и прикинем, во сколько это выльется?». В комнате повисла тишина. Послышалось что то вроде «нейросеть?», «а обучающая выборка?», «а точность?», «юридические риски». Но решили взяться, так как я была уверена в бомбовом результате. И понеслась.

Читать далее

Автоматизируем подготовку промтов для GPT: Python-функция для детального описания DataFrame

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

Привет, меня зовут Виталий. Автор телеграмм канала «Детектив данных» про смену профессии и мой вкат в «аналитику» после 30 лет. И да, я уже наверное года полтора использую помощь нейросети при написании кода на Питоне.

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

Будто при допросе вместо описания преступника, следователь внимательно изучает все родинки у допрашиваемого лица. И у адвоката.

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

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

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

Смотрим функцию, сохраняем

Бот-модератор с LLM для Телеграм

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

В этой статье я рассмотрю пример в котором будут использоваться LLM для выполнения задач модерации в Telegram.

И в отличии от классического ML, LLM не нужно переобучать, достаточно просто изменить промпт. Это делает LLM идеальным инструментом для интеллектуальной модерации.

Читать далее

Неудачные эксперименты с Vibe Coding на Python

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

Команда Python for Devs подготовила перевод статьи Элa Свейгарта о неудачных экспериментах с vibe coding. Все говорят, что ИИ уже умеет писать приложения, но стоит чуть отклониться от привычных сценариев — и всё идёт наперекосяк. Картофельная Африка вместо карты, пинбол, превращающийся в пинг-понг, и счёты с отрицательными числами — автор собрал коллекцию своих провалов с vibe coding.

Читать далее

Sber SaluteSpeech в Python без боли и сертификатов

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

Sber SaluteSpeech — мощный сервис для распознавания речи, но его официальный SDK имеет высокий порог входа. Разработчики сталкиваются с многоступенчатым процессом, временными токенами авторизации и сертификатами Минцифры, что является избыточно сложным для типовой задачи транскрибация аудио.

Когда требуется простое решение — «передал аудиофайл, получил текст», — хочется иметь под рукой лаконичный и понятный интерфейс.

Чтобы решить эту проблему, я разработал salute_speech — легковесную Python-библиотеку, которая абстрагирует сложность официального API и предоставляет простой интерфейс, вдохновленный подходом OpenAI Whisper.

Читать далее

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

Как победить циклические импорты в Python простым способом

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

Команда Python for Devs подготовила перевод статьи о том, как справляться с циклическими импортами в Python. В статье показан простой приём: иногда не нужно переписывать архитектуру, а достаточно изменить стиль импорта, чтобы избежать ошибок.

Читать далее

Как мы научили LLM отвечать на вопросы абитуриентов в крупнейшем вузе страны

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

Академий показал, что LLM-бот может работать в продакшене, а не в демо. RAG, SQL-модуль, собственный бенч и GPU-инфра позволили выдержать десятки тысяч запросов в реальной приёмной кампании.

Для абитуриентов это быстрые и точные ответы 24/7, для вуза — разгрузка комиссии и масштабируемый инструмент. Для нас — платформа, где мы улучшаем подходы к RAG, фильтрации и безопасности в живой среде.

Читать далее

Как получать котировки с любых сайтов в Эксель на примере investing.com

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

Многие частные инвесторы ведут свои портфели в Excel: это удобно, бесплатно и всё — на вашем компьютере. Но у Excel есть слабое место: он не умеет напрямую «разговаривать» с современными сайтами. Если нужно автоматически подтянуть котировку с конкретной страницы в интернете, встроенные веб‑функции часто не справляются: они не умеют обходить современные защиты.

В этой статье я покажу простой и надёжный способ заставить Excel получать котировки практически с любого сайта — на примере курса USD/RUB с investing.com. Идея не требует глубоких технических знаний: вместо того чтобы пытаться что-то делать со страницей в Excel, мы используем на своём компьютере небольшой скрипт‑посредник. Excel просто запрашивает у него одно число, а посредник уже «ходит» на сайт, берёт данные, при необходимости обрабатывает их и возвращает в понятном для Excel виде.

Приведённый Python‑скрипт (набор инструкций для этого «посредника») — это учебный пример: он предназначен исключительно для демонстрации принципа работы с API и веб‑технологиями. Я не призываю и не рекомендую использовать его для обхода правил каких‑либо сайтов.

Все исходные файлы проекта доступны в репозитории на GitHub.

Читать далее

WebP: Идеальный хамелеон? Разбор формата и LSB-стеганография в режиме Lossless

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

Всем привет! Мы продолжаем наш цикл статей, посвященный практической стеганографии в самых, казалось бы, обыденных файлах. Мы уже научились прятать данные в «слепых зонах» документов MS Office, внедрять «файлы-призраки» в EPUB и даже создавать скрытые каналы данных внутри PDF.

В комментариях к прошлым материалам наши читатели справедливо заметили: «А что насчет WebP?».

Читать далее

Навайбкодил и рад: за 20 часов создал сервис, который автоматизировал маркетинг

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

Про то, как нейросети помогли быстро создать систему управления influence-маркетингом, которая позволила сэкономить 3-5 минут на каждом размещении, убрать задержки в работе и человеческий фактор, а также красиво визуализировать данные.

Читать далее

HackRF на Windows: работа через DLL и создание Python-библиотеки

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

Небольшая статья для начала работы на питоне с приемником HackRF One под Windows. Когда мне захотелось работать с приемником HackRF напрямую из Python, я обнаружил, что существующая библиотека pyhackrf работает только на Linux. Это подтолкнуло меня к доработке подхода для работы под Windows через прямое взаимодействие с DLL. Возможно, мой опыт кому-то пригодится.

Читать далее

SCARA-based робот 2016, или как мы поехали в Ухань на международные соревнования по робототехнике Robocon 2018. Часть 1

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

Предыстория вопроса. Знакомство с китайской компанией Dobot началось год назад с проекта «Кубики».

Для проекта требовался небольшой недорогой механизм, способный строить башню из кубиков.

Исследование тематических ресурсов мне удалось составить небольшой перечень возможных конструкций. Так же был найден интересный ресурс на сайте МФТИ — лабораторная работа «Робот строит башню».

Читать далее

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