Обновить
547.72

Python *

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

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

Django REST. Реализация функционала добавления в «избранное» с возможностью расширения типов добавляемого контента

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

Допустим у нас есть зарегистрированные пользователи и какая-то модель, например "Компании", которую пользователь может добавлять в избранное. Обычно такая задача решается путем создания третьей таблицы Favorite, являющейся связующим звеном, для реализации ManyToManyField связи между пользователем и компанией

Читать далее

Ошибки начинающего аналитика при обработке данных на Python: 4 всадника апокалипсиса

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

Саша начинает свой карьерный путь в качестве аналитика. Директор ставит задачу: подготовить отчёт по эффективности сотрудников. Саша решает выполнять задачу с помощью Python. У аналитика есть минимальный опыт программирования. 

Саша выгружает данные по первому отделу из таск трекера и пишет код для обработки данных. Код работает, хоть и состоит на 70% из неуниверсальных полуавтоматизированных фрагментов. При выгрузке данных по другим подразделениям формат файла меняется. Код требует постоянных ручных изменений, а срок сдачи отчёта поджимает.

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

Читать далее

Strawberry GraphQL и FastAPI. Так что получается, Pydantic всё-таки не нужен?

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

В статье вы узнаете про мой подход к реализации mapper SQLAlchemy <-> Strawberry (GraphQL). Значительная часть статьи состоит из кода!

Читать

Основы python в бизнесе

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

Господа, приветствую! Решил описать результаты изучения абсолютно бесплатных курсов и статей по языку программирования python, любые комментарии с одобрениями/осуждениями/пожеланиями приветствуются.

И так, дело было вечером - делать было нечего.... Бесплатный(пробный) курс на Я.Практикуме подтолкнул зафиксировать полученные знания хоть как-нибудь, так родилась идея создания Калькулятора Лазерной Резки(далее КЛР), аплодисменты в студию!! Видео на ютубе "Учим python за 7 часов! Уроки Python Полный курс обучения программированию на python с нуля" канала Python Hub Studio придало уверенность.

Читать далее

Дублирующий скрипт: как с его помощью мы ускорили бизнес-процесс с двух рабочих дней до семи минут

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

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

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

Вас приветствуют Гевонд Асадян и Илья Мясников. В банке «Открытие» в управлении риск-технологий мы занимаемся внедрением моделей оценки кредитного риска. В этой статье на примере большого и сложного процесса выдачи экспресс-кредитов мы расскажем, как нам удалось реализовать полноценный дубль процесса на стороне одного проверочного скрипта и ускорить процесс выдачи экспресс-кредитов с двух рабочих дней до семи минут.

Далее про наш кейс

Граф стека вызовов — новая функция для GitHub, GitLab, JetBrains IDE

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

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

Читать далее

Python Дайджест: как актуализировать всю кодовую базу с помощью pre-commit

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

Продолжаю рассказывать, как open source проект Python Дайджест спустя 5 лет без обновлений удалось актуализировать по всему стэку технологий. В первой части рассказал, как удалось outdated проект с Python 3.4 обновить до Python 3.11 и Django 4.1.


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


Читать дальше →

Генерация DAG в Apache Airflow

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

Пошаговая инструкция о том, как из одного DAG сделать фабрику DAG.

Включает в себя: установка Airflow через Docker и поэтапное объяснение того, как сделать фабрику DAG.

Читать далее

Какого цвета атомы?

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

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

И да, это кликбейтный заголовок :)

Клюнуть на кликбейтный заголовок

Простейший полнотекстовый поиск на Python с поддержкой морфологии

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

В прошлой статье я рассказывала, что составила для своего проекта словарь «Властелина Колец», причем для каждого англоязычного терма (слова/словосочетания) хранится перевод и список глав, в которых встречается это выражение. Все это составлено вручную. Однако мне не дает покоя, что многие вхождения термов могли быть пропущены.

В первой версии MVP я частично решила эту проблему обычным поиском по подстроке (\b{term}, где \b – граница слова), что позволило найти вхождения отдельных слов без учета морфологии или с некоторыми внешними флексиями (например, -s, -ed, -ing). Фактически это поиск подстроки с джокером на конце. Но для многословных выражений и неправильных глаголов, составляющих весомую долю моего словаря, этот способ не работал.

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

Изобретение велосипеда на Python и pandas

Бесплатный мультиязычный чат для сайта на Tawk + Notion + Telegram + chatGPT + GPT-Index

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

Вы хотите общаться с посетителями сайта на всех языках и при этом чтобы вам помогал обученный на вашей базе знаний chatGPT?

Я следил за различными видами использования chatGPT с момента его выхода. Предлагаемое в статье решение я еще не встречал и поэтому думаю оно будет кому-то полезным.

Читать далее

LMS.NetMap швейцарский нож для анализа сетевой инфраструктуры

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

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

Также по статистике проведенных пентестов около 70% ИТ и ИБ отделов
клиентов не имели карту сети. То есть админы даже представления не имели
как устроена топология сети и что там происходит. А ведь корпоративные
информационные системы давно стали неотъемлемой частью любого бизнеса,
являются основой множества бизнес‑процессов.

Читать далее

progressive_plots или ускоряем построение графиков

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

Здравствуйте, меня зовут Николай Стрекопытов и большую часть карьеры я работал на стыке R&D и Deep Learning и в задачах возникающих в этих нишах часто невозможно написать какие-то автотесты и не всегда понятно где вообще может быть проблема поэтому нужно визуально исследовать графики каких-то алгоритмически-заданных функций или показаний с девайса при разных параметрах, а хочется эти графики изучить в максимально детализированном варианте, что почти всегда занимает неприлично большое количество времени.

Я подумал, что можно вычислять значения функции в узлах не в порядке "перебираем каждую строчку столбца, а затем переключаемся на следующий столбец", а в каком-то более хитром порядке И выводить результат не через часы вычислений, а по мере извлечения информации, а в точках, в которых еще не была вычислена функция показывать результат интерполяции. Собственно в этой статье я хочу описать как я разработал прототип библиотеки, которая решает эту задачу и в комментариях с удовольствием вычитаю дельные замечания.

Читать далее

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

Визуализация архитектуры модели PyTorch

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

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

В этом посте вы узнаете:

Как сохранить модель PyTorch в формате обмена

Как использовать Netron для создания графического представления.

Читать далее

Главное из мира Python за февраль 2023

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

Раз в месяц мы в Moscow Python Podcast собираемся и обсуждаем новые релизы, PEP, заинтересовавшие нас инструменты и статьи. Под катом — текстовая выжимка из обсуждения.

Читать далее

Цепочка методов в pandas. Прокачиваем свой код. Минигайд для интересующихся

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

Цепочка методов (или цепочка вызовов, method chaining) - это стиль записи кода, который позволяет выполнять несколько операций за один раз, в конечном счете экономя время и энергию.

Для тех, кто не знаком с этой концепцией, это, по сути, способ применения нескольких методов или функций к данным в одной строке кода. Традиционный подход к использованию pandas предполагает использование отдельных функций и команд по одной за раз. Это может стать довольно утомительным и трудным для запоминания. Кроме того, если что-то пойдет не так, может быть трудно устранить неполадки, поскольку было использовано несколько операций. У меня еще была привычка, прыгать с одной ячейке на другую, вот тогда точно можно не вспомнить, что ты делал и проще переписать все заново.

Читать далее

Отображение графа на Python с networkx

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


Граф — это форма визуализации, позволяющая показывать и анализировать отношения между сущностями. Например, рисунок ниже показывает вклад редакторов Википедии на различных языках энциклопедии в июле 2013 года:



Можно сделать несколько наблюдений:


  • Английский (en) — основной язык, на который переводятся все остальные языки; в то же время многие англоязычные материалы переводятся на другие языки.
  • Китайский (zh) переводится на японский (ja), но не наоборот.
  • И китайский, и японский материалы переведены на английский, и наоборот.

Я же расскажу о том, как для отображения графов использовать пакет networkx.

Читать дальше →

Какие профессии выбирают женщины в столице и регионе

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

Привет, хабр! Я Алексей, аналитик компании Мегапьютер. Недавно прошел праздник прекрасной половины человечества, и я задумался о женских популярных профессиях.

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

Анализу подверглись резюме представительниц прекрасного пола столиц и регионов. Аналитики компании загрузили резюме женщин Москвы и Санкт-Петербурга, Иваново и Твери с сайта по поиску работы.

Читать далее

Разработка Web API на Django с помощью Django REST framework: от создания моделей до тестирования

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

Django REST framework (DRF) — это мощный и гибкий инструмент для создания Web API на основе Django. Он предоставляет удобные средства для создания RESTful API, поддерживает аутентификацию, авторизацию, сериализацию, валидацию и другие функции.

В этой статье мы рассмотрим, как использовать Django REST framework для создания Web API на базе Django.

Читать далее

Генерация 2D мира с помощью клеточного автомата на Python

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

Всем привет! На написание этой статьи меня вдохновил автор YouTube канала PeaAshMeter. В своем видео автор показывает простейший генератор 2D мира, который основан на простейшем правиле клеточного автомата. Что такое клеточный автомат? Какие клеточные автоматы бывают? На эти и многие другие вопросы я попробую ответить.

Читать далее

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