Обновить
1024K+

Python *

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

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

Лекции Техносферы. 1 семестр. Введение в анализ данных (весна 2016)

Время на прочтение3 мин
Охват и читатели44K
Слушайте и смотрите новую подборку лекций Техносферы Mail.Ru. На этот раз представляем в открытом доступе весенний курс «Введение в анализ данных», на котором слушателей знакомят со сферой анализа данных, основными инструментами, задачами и методами, с которыми сталкивается любой исследователь данных в работе. Курс преподают Евгений Завьялов (аналитик проекта Поиск Mail.Ru, занимающийся извлечением полезных бизнесу знаний из данных, генерируемых поисковым движком и десктопными приложениями), Михаил Гришин (программист-исследователь из отдела анализа данных) и Сергей Рыбалкин (старший программист из студии Allods Team).

Лекция 1. Введение в Python


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


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

Интервью с Кириллом Борисовым, который выступит на Moscow Python Conf 12 октябя

Время на прочтение3 мин
Охват и читатели4.8K
Организовывать три айтишных события одновременно с выходом Legion — то еще удовольствие. Тем не менее, как принято говорить у геймеров, «маны нет — но мы держимся». А я продолжаю брать интервью у спикеров, которые всего через неделю расскажут вам интересное из мира Python разработки и, что самое важное, будут готовы все это обсудить во время многочисленных кофе пауз, которые я аккуратно расставил по всей программе.

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

0b1001 путей решения задачи перевода чисел в римскую запись

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

Привет друзья. Вот вам простенькая задачка. Как бы вы перевели арабские числа в римские используя Python? Правда с одним условием — числа не могут быть больше чем 4000.

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

Создание языка программирования. Часть 0

Время на прочтение3 мин
Охват и читатели19K
Доброго времени суток Уважаемые Хабра пользователи! Не буду долго рассусоливать, расскажу лишь основное что подтолкнуло меня к написанию данной статьи, и к собственно разработке своего языка программирования.

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

В связи с этим, сразу даю ответ на вопросы «Зачем это надо?! Очередной велосипед написать? Заняться что ли нечем?» — делается это с целью удовлетворения интереса, а так же для того что бы такие же интересующиеся как я имели представление о том как это работает.
Читать дальше →

Обработка голосовых запросов в Telegram с помощью Yandex SpeechKit Cloud

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

Как все начиналось


Этим летом я участвовал в разработке бота Datatron, предоставляющего доступ с открытыми финансовыми данными РФ. В какой-то момент я захотел, чтобы бот мог обрабатывать голосовые запросы, и для реализации этой задачи решил использовать наработками Яндекса.

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

Руби(н) vs Питон: самые важные вопросы и ответы

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


«Питон или Руби» — это один из самых горячо обсуждаемых топиков в мире программирования. Впереди него только “emacs или vim” и “pro-skub или anti-skub” по важности и сложности. Сегодня мы изучим разницу и ответим на вопросы, а также объективно и окончательно решим, что лучше.


Что такое Питон?


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


Что такое Руби(н)?


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


В чем схожесть?


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


  • Динамическая типизация: Тип, к которому относится слово, динамически определяется из контекста. Питон может относится к семейству (питонов), роду (broghammerus) или к виду (сетчатый питон). Аналогично, рубин может быть конкретным минералом (корунд с примесями хрома), или относиться к общей категории красных камней.
  • Интерпретируемый: Питоны и рубины часто используются как символы и метафоры, особенно в поэзии и мифологии.
  • Объектно-ориентированные: Они оба — объекты, но некоторым людям некомфортно относиться к животным как к объектам.
  • Высокоуровневые: Я изучал в университете физику, и все, что больше атома водорода считаю «высокоуровневым». Я не шучу. Мы еще не нашли решение уравнению Шредингера для атома гелия, а это все лишь атом водорода с дополнительной болтающейся хреновиной.
Читать дальше →

Принципы реактивного программирования на примере простого RSS-агрегатора с использованием ReactiveX для Python

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

В последние годы реактивное программирование в целом, а технология ReactiveX в частности, обретает всё большую популярность среди разработчиков. Одни уже активно используют все преимущества этого подхода, а другие только “что-то слышали”. Со своей стороны я постараюсь помочь вам представить, насколько некоторые концепции реактивного программирования способны изменить взгляд на привычные, казалось бы, вещи.
Читать дальше →

Тонкости построения сетевых моделей в Python

Время на прочтение5 мин
Охват и читатели16K
Что является основным инструментом, который использует руководитель при управлении проектом? Принято считать, что основным инструментом руководителя проекта является календарный план, в основе которого лежит сетевая модель работ по проекту. Однажды мне довелось реализовать сетевую модель работ на языке Python (код и описание здесь). Ниже приведены уроки, извлеченные по результатам проделанной работы.
Читать дальше →

Progrobot: бот справки по языкам программирования

Время на прочтение5 мин
Охват и читатели15K
Когда пишешь код, регулярно бывает нужно посмотреть справку по конкретной функции, модулю и т.д. Обычно я для этого захожу на cppreference.com или на docs.python.org, но это обычно не мгновенно — требует перехода по нескольким страницам минимум, а в питоновской документации еще и зачастую просто сложно найти нужную информацию на странице, не говоря уж о том, что гугл часто направляет на документацию по второй версии, а не по третьей, и приходится вручную переключать.

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

Так получился бот @Progrobot. Ему можно отправить название функции и получить ее краткое описание, можно послать название модуля (в питоне) или заголовочного файла (в c++) и получить список всех функций в этом модуле, и т.д. Пока есть справка по c++ (с cppreference) и python3 (с docs.python.org). Еще планировал сделать поиск по stackoverflow, но оказалось, что API-шный поиск работает плохо, да еще и есть жесткое ограничение на количество запросов — короче, пока отключил, потом, может быть, выкачаю offline-базу и допилю.
Читать дальше →

Анимированные QR коды

Время на прочтение1 мин
Охват и читатели20K
В свободном доступе появилась реализация интересных графических или анимированных QR кодов.

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

Github: github.com/sylnsfar/qrcode
Веб-версия: www.amazing-qrcode.com

Примеры анимированных QR кодов, GIF 1Мб
image image

Конвертируем форум из MS Exchange в MySQL с помощью Python

Время на прочтение7 мин
Охват и читатели4.9K
В общих папках ms exchange есть форум, куда пишут сотрудники, он очень неудобный и тормозной. Чтобы перенести форум на какое-то адекватное решение, необходимо также перенести уже и созданный контент. Гугл не нашел готовых конверторов в *bb, поэтому я решил сделать свой на python, для начала в БД.
Читать дальше →

Вычисление 1000000 знаков числа Пи. На iPhone

Время на прочтение8 мин
Охват и читатели82K
Математика — весьма интересная и занимательная наука, особое место в которой занимает вычисление числа Pi. История его вычисления занимает более 2х тысячелетий, а точность вычисления колеблется от 256/81 в древнем Египте и 339/108 в Ведах, до Джамшида ал-Каши, вычислившего 16 знаков в 15м веке. Чего стоит хотя бы история Вильяма Шенкса, который потратил 20 лет на вычисление 700 знаков числа Пи, но уже потом выяснилось, что во второй части расчетов он ошибся… Но текст в общем-то не об этом, а об алгоритмах. Стало интересно, можно ли вычислить Пи на iPhone? И если да, то с какой точностью?


Можно сказать сразу — миллион не предел. Можно и больше. Подробности и реализация под катом.
Читать дальше →

Приглашаем на Python-Meetup 22 сентября

Время на прочтение1 мин
Охват и читатели5.2K
Привет, Хабр! Весной в рамках традиционного однодневного формата у нас успешно прошел митап для питонистов, с видеозаписями и презентациями которых вы уже могли ознакомиться.

Продолжая традицию собирать в стенах московского офиса ведущих специалистов, мы хотели бы пригласить вас на Moscow Python Meetup, который пройдет у нас в сентябре. На встрече выступят:
Читать дальше →

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

Как я создавал убийцу HTML

Время на прочтение5 мин
Охват и читатели45K
В жизни каждого начинающего программиста-самоучки есть момент, когда смотреть очередное видео из серии «Основы %language_name%» уже не интересно, а проситься в джуниоры ещё рано. В этот момент хочется опробовать свои силы на каком-нибудь «почти настоящем» проекте. Под катом — история о том, как я придумал такой проект и что из этого вышло.

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

Script-server. WebUI для удалённого запуска ваших скриптов

Время на прочтение7 мин
Охват и читатели23K
Всем привет. В данной статье я бы хотел рассказать про свой домашний проект. Если коротко: Script server является веб-сервером для предоставления пользователям доступа к вашим скриптам через web-интерфейс. Сервер и скрипты запускаются локально, а параметризуются и показываются удалённо.


Подробности внутри

Пишем изящный парсер на Питоне

Время на прочтение11 мин
Охват и читатели207K
В C++17 (нет-нет, Питон скоро будет, вы правильно зашли!) появляется новый синтаксис для оператора if, позволяющий объявлять переменные прямо в заголовке блока. Это довольно удобно, поскольку конструкции вида

Foo foo = make_foo();
if(foo.is_nice()) {
    // do work with foo
}
// never use foo again
// foo gets deleted

довольно общеупотребительны. Код выше лёгким движением руки программиста (и тяжёлым движением руки комитета по стандартизации) превращается в:

if(Foo foo = make_foo(); foo.is_nice()) {
    // do work with foo
}  // foo gets deleted
// never use foo again (well, you can't anyway)

Стало чуть-чуть лучше, хотя всё ещё не выглядит идеально. В Python нет и такого, но если вы ненавидите if в Python-коде так же сильно, как я, и хотите научиться быстро писать простые парсеры, то добро пожаловать под кат. В этой статье мы попытаемся написать короткий и изящный парсер для JSON на Python 2 (без каких-либо дополнительных модулей, конечно же).
Читать дальше →

Интервью с Артёмом Малышевым, который выступит на Moscow Python в октябре

Время на прочтение3 мин
Охват и читатели6.4K
Айтишных конференций в Москве проходит много. Если ходить на каждую — то можно только этим и заниматься. Разработчики-интроверты ходить на конференции не очень любят: кто все эти люди, почему доклады либо неинтересны либо для полутора узких спецов, все равно ничего нового не узнаю и так далее. Но ходят. Потому что конференция — это уникальная возможность пообщаться с такими же разработчиками, которые собрались в одно месте специально для этого. А чтобы не промахнуться, мы ориентируемся на доклады.

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

На прошлой неделе я проинтервьюировал Ивана из Positive Technologies, который чуть больше чем через месяц расскажет нам, почему 100% покрытие тестами это плохо. А сегодня я предлагаю вам почитать ответы его коллеги Артёма Малышева, который расскажет нам про Django Channels. Штуку, благодаря которой больше не нужно будет каждый второй проект начинать с развертывания и настройки Celery.
Что мне рассказал Артём?

ML boot camp 2016 новичок в ТОП 10

Время на прочтение5 мин
Охват и читатели8.1K
Не так давно закончились соревнования по машинному обучению от Mail.ru. Я занял 9 место, и, собственно, хотел бы поделиться тем, как это у это меня получилось. Если коротко, то повезло.


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

Интервью с первым спикером Moscow Python

Время на прочтение3 мин
Охват и читатели5.8K
Организаторы Moscow Python Conf доверили мне поиск докладчиков и составление программы конференции. А программу я обычно составляю так, чтобы самому было интересно сходить. Подготовка конференции – дело интересное. Когда еще представится возможность взять интервью у других интеровертов-разработчиков? Наш первый герой Иван Цыганов из Positive Technologies. На конференции он выступит с провокационным докладом, в котором расскажет, почему 100% покрытии тестами – это плохо. Интригу, конечно, никто раскрывать не будет. Но ведь опытного разработчика, который выступает на конференциях, много о чем можно спросить, не так ли? Например, зачем он вообще выступает на конференциях и почему ему спокойно на диване не лежится.
Получить ответ на этот и другие провокационные вопросы

Scrapy: собираем данные и сохраняем в базу данных

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

Введение


Меня заинтересовал данный фреймворк для сбора информации с сайтов. Здесь были публикации по Scrapy, но поскольку детальной информации на русском языке мало, то я хотел бы рассказать о своем опыте.
Читать дальше →