Обновить
512K+

Python *

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

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

Отчет с PyDaCon meetup в Mail.ru Group, 22 июня

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


В конце июня, в московском офисе прошел митап на котором собрали 2 секции: доклады по Python, состав которого был сформирован на основе общего списка докладов к PyCon Russia и PyData-трек от PyData Moscow meetup. Под катом собрали презентации, записи докладов и небольшие комментарии.

Подборка рабочих примеров обработки данных

Время на прочтение4 мин
Охват и читатели14K
Привет, читатель.

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

Схема работы с текущим постом унаследуется от моего поста про лучшие блокноты по ML и DS, а именно — сохранил в закладки → передал коллеге.

+ бонус в конце статьи — крутой курс от ФПМИ МФТИ.

image

Итак, давайте приступим.

Подборка датасетов с рабочими примерами обработки данных:


Suicide Rates Overview 1985 to 2016 — сравнение социально-экономической информации с показателями самоубийств по годам и странам.

Примеры обработки:

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

Простое шифрование текста — кортежем цифр, с регулированием сложности

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

Github


https://github.com/denisxab/SHISH

Захотелось сделать очень простое криптографическое приложение для текста, вдруг будет такая необходимость.

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

Сам ключ храниться в .json поэтому отправить, посмотреть, редактировать его просто.

Как это работает ?


  1. Создать ключ.
  2. Поделиться ключом.
  3. Написать текст в окно «Закодировать» нажать на кнопку.
  4. Отправить текст из окна «Декодировать».

Из за особенности tkinter он отвечает не list а обычным str и поэтому каждый отступ в окне «Декодировать» важен.
Пример

NVIDIA Jetson Nano: тесты и первые впечатления

Время на прочтение5 мин
Охват и читатели102K
Привет, Хабр.

Относительно недавно, в этом, 2019 году, NVIDIA анонсировала одноплатный компьютер совместимого с Raspberry Pi форм-фактора, ориентированный на AI и ресурсоемкие расчеты.



После его появления в продаже, стало интересно посмотреть, как это работает и что на нем можно делать. Стандартные бенчмарки использовать не так интересно, так что придумаем свои, для всех тестов в тексте приведены исходники. Для тех, кому интересно что получилось, продолжение под катом.
Читать дальше →

Оптимальная линейная фильтрация: от метода градиентного спуска до адаптивных фильтров

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

Развивая тему конспектов по магистерской специальности "Communication and Signal Processing" (TU Ilmenau), продолжить хотелось бы одной из основных тем курса "Adaptive and Array Signal Processing". А именно основами адаптивной фильтрации.


Для кого в первую очередь была написана эта статья:

1) для студенческой братии родной специальности;
2) для преподавателей, которые готовят практические семинары, но ещё не определились с инструментарием — ниже будут примеры на python и Matlab/Octave;
3) для всех, кто интересуется темой фильтрации.


Что можно найти под катом:

1) сведения из теории, которые я постарался оформить максимально сжато, но, как мне кажется, информативно;
2) примеры применения фильтров: в частности, в рамках эквалайзера для антенной решетки;
3) ссылки на базисную литературу и открытые библиотеки (на python), которые могут быть полезны для исследований.


В общем, добро пожаловать и давайте разбирать всё по пунктам.


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

Решение задания с pwnable.kr 05 — passcode. Перезапись таблицы связей процедур через уязвимость форматной строки

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

В данной статье разберем: что такое глобальная таблица смещений, таблицей связей процедур и ее перезапись через уязвимость форматной строки. Также решим 5-е задание с сайта pwnable.kr.

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

  • PWN;
  • криптография (Crypto);
  • cетевые технологии (Network);
  • реверс (Reverse Engineering);
  • стеганография (Stegano);
  • поиск и эксплуатация WEB-уязвимостей.

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

Вероятность того, что 2 шахтёра имеют одинаковый мир

Время на прочтение2 мин
Охват и читатели7.2K
Всем привет! Недавно меня заинтересовал вопрос: «может ли быть такое, что 2 игрока в Minecraft имеют один и тот же одиночный мир?»
Читать дальше →

Пишем простую нейронную сеть с использованием математики и Numpy

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

Зачем очередная статья про то, как писать нейронные сети с нуля? Увы, я не смог найти статьи, где были бы описаны теория и код с нуля до полностью работающей модели. Сразу предупреждаю, что тут будет много математики. Я предполагаю, что читатель знаком с основами линейной алгебры, частными производными и хотя бы частично, с теорией вероятностей, а также Python и Numpy. Будем разбираться с полносвязной нейронной сетью и MNIST.
Читать дальше →

Безумный конвертер GIF'ок в анимированные стикеры для Telegram

Время на прочтение5 мин
Охват и читатели59K
Вместо тысячи слов...


xZibit тоже рад, ведь здесь GIF вставлены в стикеры, чтобы быть вставлеными в GIF для КДПВ!

А теперь о подробностях реализации.
Читать дальше →

Kubernetes Operator на Python без фреймворков и SDK

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


Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как:

  1. Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK.
  2. На Go написаны такие «перевернувшие игру» приложения, как Docker и Kubernetes. Писать свой оператор на Go — говорить с экосистемой на одном языке.
  3. Высокая производительность приложений на Go и простые инструменты для работы с concurrency «из коробки».

NB: Кстати, как написать свой оператор на Go, мы уже описывали в одном из наших переводов зарубежных авторов.

Но что, если изучать Go вам мешает отсутствие времени или, банально, мотивации? В статье приведен пример того, как можно написать добротный оператор, используя один из самых популярных языков, который знает практически каждый DevOps-инженер, — Python.
Читать дальше →

Курс лекций «Основы цифровой обработки сигналов»

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

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

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


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

Есть ли что-то общее у разных песен-хитов?

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

Если выполнить вход на Spotify.me, то можно получить персонализированную сводку того, как Spotify понимает вас через музыку, которую вы слушаете на этом сайте Spotify. Это круто!

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

Мне было очень любопытно, существуют ли какие-то конкретные ингредиенты, из которых составлены хитовые песни. Что делает их крутыми? Почему нам нравятся хиты, и есть ли у них определённая «ДНК»?

Задача


Это привело меня к попытке ответить при помощи данных Spotify на два вопроса:

  1. На что похож мой музыкальный плейлист?
  2. Существуют ли конкретные атрибуты аудио, общие для всех хитовых композиций?

Инструменты


К счастью, есть очень простые инструменты, позволяющие подключиться к Spotify, получить данные, а затем визуализировать их.

Мы будем работать с языком программирования Python 3, библиотекой Python Spotipy, позволяющую подключаться к Spotify Web API, а визуализировать данные будем с помощью plot.ly и Seaborn.

Массив данных


В конце каждого кода Spotify компилирует плейлист из 100 самых часто воспроизводимых песен. Использованный мной массив данных уже выложен на Kaggle: Top Spotify Tracks of 2018. Список 100 самых популярных песен со Spotify кажется вполне разумным массивом данных для изучения хитов, не правда ли?
Читать дальше →

История о том, как разработка игры стала частью моей жизни

Время на прочтение4 мин
Охват и читатели15K
Здравствуйте! Меня зовут Максим Газизов. Ранее я публиковал пост на Хабре о своих успехах и ошибках в геймдеве. И затем, спустя год работы над своим детищем под названием Wasteland Wars, я пропал из эфира. Всё потому, что меня настолько затянул процесс, как никогда раньше. Кстати, так вышло, что я потерял свой прежний аккаунт и вот создал новый.

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

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

Галерея лучших блокнотов по ML и Data Science

Время на прочтение3 мин
Охват и читатели35K
Привет, читатель.

Меня зовут Рушан, и я автор Telegram‑канала Нейрон. Не забудьте поделиться с коллегами или просто с теми, кому интересны такие статьи. Представляю пост который идёт строго (!) в закладки и передаётся коллегам. Он с подборкой примечательных файлов формата Jupyter Notebook по Machine Learning, Data Science и другим сферам, связанным с анализом данных. Эти блокноты Jupyter, будут наиболее полезны специалистам по анализу данных — как обучающимся новичкам, так и практикующим профи.

image

Итак, приступим.

Вводные курсы в Jupyter Notebook


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

Рецепты для ELFов

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

image


На русском языке довольно мало информации про то, как работать с ELF-файлами (Executable and Linkable Format — основной формат исполняемых файлов Linux и многих Unix-систем). Не претендуем на полное покрытие всех возможных сценариев работы с эльфами, но надеемся, что информация будет полезна в виде справочника и сборника рецептов для программистов и реверс-инженеров.


Подразумевается, что читатель на базовом уровне знаком с форматом ELF (в противном случае рекомендуем цикл статей Executable and Linkable Format 101).


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

Поработаем с эльфами

Решение задания с pwnable.kr 07 — input. Разбираемся с pwntools

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

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

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

  • PWN;
  • криптография (Crypto);
  • cетевые технологии (Network);
  • реверс (Reverse Engineering);
  • стеганография (Stegano);
  • поиск и эксплуатация WEB-уязвимостей.

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

Автоматизация импортов в Python

Время на прочтение7 мин
Охват и читатели23K
До После
import math
import os.path

import requests

# 100500 other imports

print(math.pi)
print(os.path.join('my', 'path'))
print(requests.get)
import smart_imports

smart_imports.all()

print(math.pi)
print(os_path.join('my', 'path'))
print(requests.get)
Так получилось, что аж с 2012 года я разрабатываю open source браузерку, являясь единственным программистом. На Python само собой. Браузерка — штука не самая простая, сейчас в основной части проекта больше 1000 модулей и более 120 000 строк кода на Python. В сумме же с проектами-спутниками будет раза в полтора больше.

В какой-то момент мне надоело возиться с этажами импортов в начале каждого файла и я решил разобраться с этой проблемой раз и навсегда. Так родилась библиотека smart_imports (github, pypi).

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

Например, не надо будет писать import math чтобы обратиться к math.pi — мы и так можем понять, что в данном случае math — модуль стандартной библиотеки.

Smart imports поддерживают Python >= 3.5 Библиотека полностью покрыта тестами, coverage > 95%. Сам пользуюсь уже год.

За подробностями приглашаю под кат.
Читать дальше →

Модуль dis в Python и свертка констант

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

Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Web-разработчик на Python». Поехали!



Недавно я очень удивился, когда обнаружил, что


>>> pow(3,89)

работает медленнее, чем


>>> 3**89
Читать дальше →

Сравнение BDD фреймворков Python: плюсы и минусы

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

Всем привет. Уже в этом месяце в ОТУС стартует курс "Python QA Engineer". В преддверии старта данного курса делимся с вами переводом интересного материала.



Почти все основные языки программирования имеют фреймворки для BDD тестирования, и Python не исключение. И по факту, у него их несколько! Итак, как их сравнить и какой из них лучший? Попробуем разобраться.

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

Получить выписку ЕГРН из Росреестра с помощью python, минуя api

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

Не первое знакомство с порталом Росреестра


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

Всем, кто уже успел поработать с сайтом, известно, что для получения выписки из ЕГРН, в которой будет содержаться информация не только об общих характеристиках объекта, но и о правообладателе данного объекта, необходимо зайти в личный кабинет Росреестра.

Возможно, это удобный способ получения одной или нескольких выписок. Однако, что делать, если необходим пакет выписок ЕГРН? Допустим, вы работаете с недвижимостью или владеете рядом объектов, общее число которых более 10. По общему правилу получать выписку из ЕГРН надо не реже 1 раза в год, чтобы успеть вовремя отреагировать в юридической плоскости на нежелательные изменения в Росреестре, если они возникнут помимо вашей воли.

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