Обновить
836.47

Python *

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

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

Работа с квалифицированными сертификатами в свете новой редакции Приказа №795 ФСБ РФ от 29 января 2021 года

Время на прочтение10 мин
Охват и читатели12K
7 сентября 2021 года мне пришло электронное письмо:
fsb795
Добрый день.
не планируете библиотеку подправить под свежие изменения в приказе 795 ?
Было понятно, что речь идет о пакете fsb795, написанном на Python для разбора квалифицированных сертификатов. Требования к составу и форме квалифицированного сертификата установлены Приказом ФСБ России от 27.12.2011 №795. Но 29 января 2021 года в этот приказ были внесены изменения. Именно об этих изменениях мне и напомнил автор письма. Письмо я получил 7 сентября, а изменения вступили в силу 1-го сентября 2021 года. В этот период времени я был увлечён написанием статьи, связанной с пятидесятилетием окончания Казанского суворовского военного училища и выбора мною стези программиста:

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

Визуализация данных с помощью веб-фреймворка Dash

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

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

Читать далее

Библиотека Pygame / Часть 1. Введение

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

Это первая часть серии руководств «Разработка игр с помощью Pygame». Она предназначена для программистов начального и среднего уровней, которые заинтересованы в создании игр и улучшении собственных навыков кодирования на Python.

Читать далее

Как я собирал ретро-консоль на базе Raspberry Pi 4 и подружил ее с проездными московского метро

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

История о том, как я собирал ретро-консоль на базе Raspberry Pi 4
и подружил ее с проездными московского метро в качестве «картриджей».

Читать далее

Создание корпуса для задачи автоматического исправления ошибок

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

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

Самым известным мультиязыковым корпусом является LANG-8, в котором содержатся тексты на восьмидесяти языках. Этот массив данных был создан людьми, изучающими иностранные языки; пользователи исправляли чужие ошибки, и данные об этом автоматически попадали в систему. Однако количественное соотношение текстов на различных языках в корпусе колеблется. Так, на английском языке присутствуют свыше миллиона различных примеров, а для некоторых других языков их около десяти тысяч. Стоит также отметить тот факт, что данные собирались без какой-либо фильтрации и верификации, из-за чего в некоторых "правильных" предложениях могут присутствовать ошибки. Всё же этот корпус также крайне мал, что приводит к необходимости использования синтетических данных.

Читать далее

Фильтрация шума сигнала

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

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

Читать далее

Диаграмма воронки в Python

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

Введение

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

Читать далее

10 легких задач по Python и SQL, которые оказались сложными :/

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

Мы уже больше года публикуем в своих соцсетях интересные задачки по программированию, Data Science, аналитике и другим темам. За все это время мы неоднократно сталкивались с такими мыслями, когда планировали очередную задачу:

Ну нет, это слишком легко и очевидно, люди от нас просто отпишутся за такие плевые задачи.

Однако, все оказалось иначе. 

Мы собрали для Вас 10 интересных мини-задачек по Python и SQL, которые кажутся очень простыми, но большинство опрошенных (около 76%) дали неправильные ответы. Вот такая вот суровая статистика ¯\_(ツ)_/¯

Проверьте - а сколько задачек Вы решите правильно?

Читать далее

Книга «Паттерны разработки на Python: TDD, DDD и событийно-ориентированная архитектура»

Время на прочтение11 мин
Охват и читатели39K
image Привет, Хаброжители! Популярность Python продолжает расти, а значит, проекты, созданные на этом языке программирования, становятся все масштабнее и сложнее. Многие разработчики проявляют интерес к высокоуровневым паттернам проектирования, таким как чистая и событийно-управляемая архитектура и паттерны предметно-ориентированного проектирования (DDD). Но их адаптация под Python не всегда очевидна.

Гарри Персиваль и Боб Грегори познакомят вас с проверенными паттернами, чтобы каждый питонист мог управлять сложностью приложений и получать максимальную отдачу от тестов. Теория подкреплена примерами на чистом Python, лишенном синтаксической избыточности Java и C#.

В этой книге:

  • «Инверсия зависимостей» и ее связи с портами и адаптерами (гексагональная/чистая архитектура).
  • Различия между паттернами «Сущность», «Объект-значение» и «Агрегат» в рамках DDD.
  • Паттерны «Репозиторий» и UoW, обеспечивающие постоянство хранения данных.
  • Паттерны «Событие», «Команда» и «Шина сообщений».
  • Разделение ответственности на команды и запросы (CQRS).
  • Событийно-управляемая архитектура и реактивные расширения.
Читать дальше →

Я не чувствую давления async

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

Async в моде. Async Python, Async Rust, Go, Node, .NET и т.д. Выбирайте свою любимую экосистему, и в ней будет свой модуль для асинхронности. Насколько хорошо работает вся эта асинхронная история, во многом зависит от экосистемы и среды выполнения языка, но в целом у нее есть несколько приятных преимуществ. Что действительно становится проще – это ожидание завершения операции, выполнение которой требует некоторого времени. Теперь это настолько просто, что количество способов выстрелить себе в ногу невероятно выросло. Тот способ, о котором я хочу сегодня поговорить – это тот, в котором вы не осознаете, что стреляете себе в ногу, пока система не начнет перегружаться. Да, я про управление давлением. Родственным термином в сетевых технологиях является «контроль потока». 

Читать далее

Последний велосипедно-питоний бой с ошибками импорта  sqlite за 2 174 433 строчки. Часть 3

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

Замечание. Вся трилогия (часть 1 тутчасть 2 туто велосипедостроении с sqlite, xml, csv только для совсем маленьких Питоньих кодеров. Не для крутых кодеров, они умрут от скуки в нашем опусе и ничего нового не увидят. В третьей части заканчиваем все, что начали ранее.

Начинаем изыски причины и местонахождения ошибки.

Итак: правильный ответ: ошибки в коде нет. Ну точнее ошибка возникает при работе кода из-за ошибки данных в файлах. 

Чтобы убедиться, что это так, добавим в код обработку исключений.

Совсем немного поправим наш код, добавим обработку и вывод на печать исключений:

Читать далее

Практические рекомендации по работе с Docker для Python-разработчиков

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

Прим. Wunder Fund: в этой длииинной статье вы найдете ряд полезных советов по работе с Docker, как общего характера, так и Python-специфичных. Хоть мы и давно используем Docker в работе, про некоторые советы мы подумали "а что, так можно было?". Советуем вначале пролистать статью, и отметить штуки, которые покажутся актуальными для вашей текущей ситуации.

Читать далее

Как создать легко воспроизводимый DS проект

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

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

Для того чтобы сделать процесс развертывания, использования и доработки алгоритма интуитивно понятным воспользуемся инструментом Kedro. Основная концепция kedro заключается в модульной структуре, где весь цикл работы с данными формируется из отдельных блоков в единый рабочий процесс. Проект на kedro имеет следующую структуру:

Читать далее

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

Selenium python как сохранить данные сессии и установить кастомный путь до профиля Chrome

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

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

В статье будет рассказано, как была решена данная проблема.

Читать далее

Находим аномалии в российской статистике COVID-19

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

Несмотря на рост заболеваемости covid-19 и горячих споров насчет принимаемых мер, разговоры про достоверность статистики немного поутихли. Кто-то согласен с руководством страны и считает, что с официальными данными все хорошо и они объективно описывают текущую ситуацию. Другие считают, что статистика безбожно врет и показатели, скорее всего, очень сильно занижены.

Последние часто ссылаются на совместное расследование «Медузы», «Медиазоны» и «Холода», которое утверждает, что в реестре Минздрава в 5 раз больше зарегистрированных случаев коронавируса, чем сообщается официально. Само расследование базируется на исследовании Сергея Шпилькина, который ранее с помощью статистических методов доказал фальсификации на выборах. В чем проблема этого исследования?

Читать далее

Kafka, Python и золотая рыбка

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

Поймал как-то программист золотую рыбку, а она ему и говорит человеческим голосом: «Отпусти меня в синее море, я исполню любое твоё желание». Программист ЦПУшечкой поскрипел, да и выдал техзадание. «Построй мне», – говорит, – «систему обработки неидемпотентных запросов, да чтоб она была высокопроизводительной, масштабируемой, гибкой и отказоустойчивой!». Охнула сперва золотая рыбка, но взяла себя в плавники и молвила: «Не печалься, ступай себе домой, код написан, система развёрнута. Отпускай меня уже». Удивился программист: «Да ладно? Ну, сейчас проверю и отпущу». «Нет», – возражает рыбка – «пока ты проверяешь, я уж засохну, и всё волшебство исчезнет». Программист задумался: «Что же делать: сначала отпустить, а потом проверить, или сначала проверить, а потом сушёную рыбу к пиву получить?».

Мечты о золотой рыбке не раз посещали умы даже опытных разработчиков. В погоне за оптимальной системой обработки запросов многие отдают недели и месяцы своей жизни, а некоторые готовы отдать и душу, чтобы всё работало без сбоев.
Но нужны ли такие жертвы? Нет... Ведь у вас есть мегабыстрая Apache Kafka, супергибкий Python и возможности NoSQL баз данных. Все эти решения прекрасны по отдельности, но как из них собрать один конвейер для обработки данных, не растеряв их преимущества? Рассмотрим под катом.

Читать далее

Ontol про пентест и этичное хакерство: подборка лучших бесплатных курсов на YouTube

Время на прочтение9 мин
Охват и читатели31K
image

Анджелина как бы намекает, что пора стать этичным хакером.

Чтобы YouTube не банил обучающие курсы по хакерству, их назвали курсами этичного хакерства.

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

Есть очень дорогие курсы, есть не очень дорогие, а есть бесплатные. Вообще-то, тру хакер всё должен выучить самостоятельно по книгам, но иногда можно и на YouTube подсмотреть.

Предлагаем вашему вниманию подборку 20+ самых популярных обучающих видеокурсов на YouTube.
Читать дальше →

Homer – новый шифр омофонической замены

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

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

Я предлагаю обратиться к одному из самых первых методов шифрования – методу подстановки. В 21-ом веке этот метод может показаться ненадежным.

Но в этой статье я попробую доказать обратное.

Моя идея основана на шифре омофонической замены. Принцип, лежащий в основе данной идеи заключается в замене всех байтов файла А номерами позиций этих байтов в файле В. Полученный файл С является зашифрованным файлом А (Рис. 1).

Читать далее

Telegraph API: автоматизированное создание заметок

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

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

Читать далее

Получаем кривую плотности распределения вероятности… быстрее и точнее

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

Недавно на Хабре вышла статья за авторством MilashchenkoEA , в которой автор восполняет обнаруженный им пробел в доступных материалах по методам построения кривых плотности распределения вероятности по имеющемуся набору числовых данных. Акцент в статье сделан на методическую сторону получения (оценки) плотности вероятности случайной величины, поэтому автор не преследует цели получения оптимального, с вычислительной точки зрения, алгоритма. Что ж, в данной заметке попытаемся исправить эту ситуацию, а также взглянем под другим углом на способ решения данной задачи.

Читать далее

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