IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог

     23.07.2018       Выпуск 240 (23.07.2018 - 29.07.2018)       Учебные материалы

Открытый урок «Пишем свою библиотеку для работы с xlsx файлами»

Небольшой открытый урок в рамках курса «Web-разработчик на Python», на котором преподаватель курса Илья Лебедев рассказывал как устроен формат xlsx, как с ним работать без специализированных библиотек, вроде openpyxl и показал как разработать свою библиотеку для работы с этим форматом с нужным набором функций.

     22.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Оптимизации, используемые в Python: список и кортеж

В Python, есть два похожих типа — список (list) и кортеж (tuple). Самая известная разница между ними состоит в том, что кортежи неизменяемы.

     22.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Обновление Django с версии 1.9 до версии 2.0

Здравствуйте, сегодня я хотел бы вам рассказать о том, как обновить проект с версии 1.9 до 2.0. Какие основные нюансы нужно учесть и переписать, дабы проект стартовал на новой версии Django.

     21.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Как начать Django проект, который можно масштабировать Django

В статье создадим проект используя шаблонизатор cookiecutter-django, настроим статическую типизацию, добавим автоматическое форматирование кода с помощью black, создадим скрипт, который запускает тесты, проверяет правильность типов через линтер mypy и стиль кода через black. Напоследок добавим пре-коммит хук, который автоматически запускает скрипт с проверками перед каждым коммитом.

     20.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Всё что нужно знать о сборщике мусора в Python

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

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

     19.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

10 курсов по машинному обучению на лето

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

Команда Университета ИТМО собрала десять курсов по машинному обучению, которые можно успеть пройти до конца лета. Одним они помогут войти в профессию, а другим — углубиться в нее.

     19.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Разминка для тех, кто умеет в Python

Мы обожаем квизы, посвященные языкам программирования. В нашем блоге мы разместили уже целых три: первый — по Python, PHP, Golang, DevOps, второй — полностью по Go, третий — только по PHP. Сегодняшний квиз посвящен исключительно Python.

 

Предлагаем вам размяться в честь конца ещё одной летней недели и в преддверии PyCon Russia 2018. (Кстати, кто едет? Мы там будем).

Под катом — семь вопросов, советы от друга, Чапаев, отрывки из ABBA (что? да!) и крутой мерч.

     18.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Аналоги в Python и JavaScript. Часть вторая

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

     17.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Вы и Брэд Питт похожи на 99%

Мы в отделе аналитики онлайн-кинотеатра Okko (Мама, привет, я теперь работаю на Rambler) любим как можно сильнее автоматизировать подсчёты сборов фильмов Александра Невского, а в освободившееся время учиться новому и реализовывать классные штуки, которые почему-то обычно выливаются в ботов для Телеграма. К примеру, перед началом чемпионата мира по футболу 2018 мы выкатили в рабочий чат бота, который собирал ставки на распределение итоговых мест, а после финала подсчитал результаты по заранее придуманной метрике и определил победителей. Хорватию в четвёрку не поставил никто.

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

     16.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи
     16.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Реализация голосового справочника на базе YandexSpeechKit

На просторах интернета представлены различные реализации, но, на мой взгляд, все они достаточно простые. Хочу представить свой вариант голосового справочника под астериск.

     16.07.2018       Выпуск 239 (16.07.2018 - 22.07.2018)       Статьи

Django. Как добавить аутентификацию через социальные сети. Google+

Это второй шаг по поддержке аутентификации через социальные сети на моём сайте, который написан на Django. И хочу поделиться тем, как это делаю. На этот раз для Google+.

     15.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Статьи

Часы с кукушкой на базе Lego Mindstorms

Два с половиной года назад я купил набор Lego Mindstorms EV3, чтобы сделать свои первые шаги в робототехнике. Вкатив на контроллер сборку ev3dev и наигравшись с управлением двигателями и сенсорами по SSH, я на два года охладел к покупке. Причина состояла в том, что мне не хватало фантазии по части того, что бы такое можно было собрать: после нескольких собранных моделей из Lego Technics (как коробочных, так и самодельных) я уже привык к чудесам наподобие дистанционно управляемых игрушек, а простые роботы наподобие представленных на Краковской выставке моделей из Lego у меня как у человека, работавшего в своё время над системой телемеханики, уже не вызывали достаточного вдохновения. Повторять чужой опыт тоже не особо хотелось.

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

     14.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Статьи

Запускаем LDA в реальном мире. Подробное руководство

На просторах интернета имеется множество туториалов объясняющих принцип работы LDA(Latent Dirichlet Allocation — Латентное размещение Дирихле) и то, как применять его на практике. Примеры обучения LDA часто демонстрируются на "образцовых" датасетах, например "20 newsgroups dataset", который есть в sklearn.

     13.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Релизы

django-yaturbo - Турбо-страницы Яндекса в Django

О том, как реализовать выдачу Турбо-страниц в вашем проекте на Django.

     13.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Учебные материалы

Best practice коммерческой разработки на Python: для профессионалов от профессионалов.​

Продвинутый онлайн-курс "Разработчик Python" для специалистов, желающих повысить свой уровень разработки. Программа курса нацелена на решение прикладных задач и освоение инструментов, применяемых при разработке инфраструктурных решений, веб-приложений, систем контроля качества и аналитических систем. Охвачены практически все сферы коммерческого применения Python.
Сдавайте вступительное тестирование и открывайте новые горизонты Python программирования!

[Реклама]

     13.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Статьи

Django. Как добавить авторизацию через социальные сети. ВКонтакте

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

     13.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Новости

Создатель Питона: я устал, я ухожу

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

     11.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Статьи

В объятьях Питона (только для женщин)

Я, как всегда, никуда не собиралась, когда в новостной ленте «ВКонтакте» вдруг увидела сообщение, что завтра последний день подачи заявок на Django Girls в Санкт-Петербурге — мастер-класс по программированию на Python для женщин. Обычно я читаю такие сообщения, когда регистрация на мероприятие уже закрыта. У меня особое везение на такие дела — узнать о событии на следующий день после его завершения. Поэтому, когда я поняла, что появилась реальная возможность попасть на бесплатный тренинг по Python, то быстро заполнила заявку, на всякий случай забронировала отель и стала ждать.

Мне кажется, я сразу знала, что меня примут, иначе как объяснить, что я проморгала аналогичное событие в Москве месяцем раньше и попала именно в Санкт-Петербурге! Можно ли придумать лучшее время для поездки: лето и белые ночи, чемпионат мира с возможностью посетить фан-зону на Конюшенной площади, знакомство с IT-сообществом Django Girls и офисом Wargaming, и под занавес праздник «Алые паруса»!

     11.07.2018       Выпуск 238 (09.07.2018 - 15.07.2018)       Статьи

Asterisk + AMI + Python

Для тех, кто умеет работать с AMI Asterisk, ничего интересного тут нет. Для тех, кто только начинает что-то делать, вряд ли разберётся в моём коде (хотя я старался писать понятно). Вангую комментарии вроде: «Зачем использовать Хабр для своих заметок?». С другой стороны, приведённый под катом скрипт может стать кому-то отправной точкой. Скрипт ничего не делает кроме того, что шлёт в консоль все события из AMI и умеет их фильтровать. Для примера, я показываю в консоле все звонки, которые попадают в любой из контекстов «zadarma-in» или «sibseti_in». Если заинтересовал, прошу под кат