Публикации о языке Python

Пишем диалоговые Telegram-боты на Питоне

Думаю, всем здесь в той или иной мере известен мессенджер Telegram. Создатель заявляет, что это самый безопасный мессенджер с убойным алгоритмом шифрования собственной разработки, но нас, разработчиков, конечно же, куда сильнее интересует другое. Боты!

Тема эта, конечно, не раз поднималась на Хабре: ботов писали на Python с tornado, Node.js, Ruby со специальным гемом, Ruby on Rails, C#, C# с WCF и даже PHP; ботов писали для RSS-каналов, мониторинга сайтов, удалённого вкл




[Перевод] Конвертирование репозитория Git из табуляций в пробелы

Эта статья о том, что сказано в заголовке.

Я имел обыкновение работать на Yelp. По историческим причинам — на самом деле «это предпочли первоначальные разработчики» — их кодовая база, по большей части на Python, всегда содержала отступы с табуляциями. Это совершенно контрастирует с большей частью огромной экосистемы Python, которая, в основном, использует рекомендацию гайда по стилю стандартной библиотеки о четырех пробелах. Присутствие табуляций периодически вызывало небольшую головную боль и ворчание среди Python-разработчиков, которых сейчас бесчисленное множество, и которые привыкли к пробелам.

В конце 2013 я пожаловал в Yelp с рождественским подарком: я конвертировал табуляции в четыре пробела во всей их первичной кодовой базе. Вряд ли кто-либо еще захочет повторить то же само



Python-digest #153. Новости, интересные проекты, статьи и интервью [21 ноября 2016 — 27 ноября 2016]

Помогите проекту рублем - на хостинг. Форма (спасибо всем, кто помогает) Оставляйте свои комментарии к выпуcкам, пишите нам в Slack (инвайт по ссылке), добавляйте свои новости через специальную форму. Следите за всем этим безобразием в RSS, Twitter или Telegram @py_digest

Поддержите проект рублем или руками




Автоматическое развёртывание Django из GitLab

В этой статье я опишу настройку автоматического развёртывания веб-приложения на стеке Django + uWSGI + PostgreSQL + Nginx из репозитория на сервисе GitLab.com. Изложенное также применимо к кастомной инсталляции GitLab. Предполагается, что читатель располагает опытом в создании веб-приложений на Django, а так же опытом администрирования Linux-систем.

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



Релиз PyCharm 2016.3: Полная поддержка Python 3.6, улучшения в Python консоли, обозревателе переменных, и многое другое

Всем привет! Вчера мы выпустили новый PyCharm 2016.3, который уже доступен для скачивания.
Этот релиз является последним крупным обновлением с новой функциональностью в 2016 году.



С момента предыдущего релиза PyCharm прошло ровно 4 месяца. За это время PyCharm получил ряд новых полезных улучшений в инструментах для Python, Django, веб и научной разработки, которые, как всегда, тесно интегрированы и эффективно работают друг с другом. Сегодня мы рады рассказать, что же интересного и важного появилось в новой версии PyCharm.
Читать дальше →




Учимся работать с asyncio+aiohttp: в Москве пройдет курс от Core-разработчика Python



17 и 18 декабря в Москве пройдет двухдневный курс под названием «Обучение работе с asyncio+aiohttp». Его автор — core-разработчик Python, украинский программист Андрей Светлов (подробнее о нем можно почитать здесь). Андрей — один из ведущих мировых экспертов по Python и создатель авторского курса. Он никогда раньше не читал его в Москве, так что наше мероприятие — отличный шанс для всех, кто интересуется Python и асинхронной разработкой, получить новые знания и ответы на свои вопросы напрямую от создателя популярных инструментов.

Мы поговорили с Андреем о том, какие вопросы будут рассмотрены на курсе, кому он может быть полезен, и какие еще ресурсы Python-разрабо



Status update: 2016

I thought I'd post something for no reason…

We're still living in Washington state, I'm still into programming, with much the same hobbies as before. However these days I actually work for money. The company is Shutterstock, and I'm a resident "refactorer" on one of the teams in Search. So for the last few months I mostly write an re-write Python code. Which feels scarily comfortable. Scare is due to me understanding that from the point of view of self-development feeling comfortable is a road to nowhere. But I'm not scared too much, as it has only started and I'm constantly thinking of how to make my work life more difficult. I've been missing that for the past few years.

My employment is somewhat




Python-digest #152. Новости, интересные проекты, статьи и интервью [14 ноября 2016 — 20 ноября 2016]

Помогите проекту рублем - на хостинг. Форма (спасибо всем, кто помогает) Оставляйте свои комментарии к выпуcкам, пишите нам в Slack (инвайт по ссылке), добавляйте свои новости через специальную форму. Следите за всем этим безобразием в RSS, Twitter или Telegram @py_digest

Поддержите проект рублем или руками




Семинар по async/aiohttp

Благодаря неоценимой организаторской помощи компании Positive Technologies я проведу семинар по asyncio/aiohttp в Москве 17-18 декабря (суббота-воскресенье).

Что в составе семинара?


  1. Базовые знания об asyncio. Из всего огромного набора функций для начала работы нужно знать всего десяток. На них и сосредоточимся.
  2. Получение данных по протоколу HTTP с помощью aiohttp (client API). Всё, что нужно знать для составления собственного бота-паука.
  3. Простейший web server на aiohttp. Советы по организации кода, работа с базами данных, шаблонизаторами, сессией пользователя и прочее.
  4. Продвинутые технологии в aiohttp: сигналы, middlewares, вложенные приложения.
  5. Возвращаемся к asyncio: Future object и streaming API.
  6. asyncio транспорт и протокол как низкоуровневые конструкторские блоки.
  7. Описание работы asyncio loop изнутри.

Об авторе (т.е. обо мне)




[Из песочницы] Сотворение мира Опыт создания разумной жизни своими руками

Иногда проводишь день в попытках без использования терминов «рекурсивный вызов» и «идиоты» объяснить главному бухгалтеру, почему на самом деле простое изменение учетной системы затягивается почти на неделю из-за орфографической ошибки, допущенной кем-то в коде в 2009 году. В такие дни хочется пооборвать руки тому умнику, который сотворил этот мир, и переписать все с ноля.



TL;DR
Под катом история о том, как я в качестве практики для изучения Python разрабатываю свою библиотеку для агентного моделирования с машинным обучением и богами.

Ссылка на github. Для работы из коробки нужен pygame. Дл