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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     23.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Релизы

pymongo - 2.9

Python интерфейс для MongoDB. Изменения описаны по ссылке https://allmychanges.com/p/python/pymongo/#2.9. Скачать можно по ссылке: http://pypi.python.org/pypi/pymongo/

     22.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Интересные концепции: утиная типизация

Слышали фразу: "Если что-то выглядит как утка, плавает как утка и крякает как утка, то, вероятно, это утка"? Эта поговорка характеризует утиную типизацию == утипизацию

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

     22.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Релизы

aiohttp - 0.18.1

http клиент/сервер для asyncio. Изменения описаны по ссылке https://allmychanges.com/p/python/aiohttp/#0.18.1. Скачать можно по ссылке: https://pypi.python.org/pypi/aiohttp/

     22.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Проигрываем список WAV файлов с помощью PyAudio

В статье вы найдете полный код для проигрывания WAV файлов на Python

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Учебные материалы: познаем Django

Django - web-фреймворк. Обладает отличной документацией, которую можно читать долго и упорно. Есть даже тутроиал по созданию блога. Вот только есть "минус" - проходишь туториал с блогом и не знаешь где еще добыть структурированной информации. Да еще и актуальной.

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Создание .exe файла для авторизации и взаимодействия с VK API при помощи Python

 

В этой статье будет рассмотрен способ создать .exe файл, позволяющий пройти авторизацию ВК и выполнить определенные запросы к VK API. Установка Python не требуется.
 

Системные требования

 

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

PYCON RUSSIA-2015: видео и презентации докладов

18-19 сентября в Екатеринбурге прошла третья международная конференция python-разработчиков PyCon Russia. 21 доклад, два мастер-класса, Lightning Talks — все это PyCon-2015. Под катом — отчет о прошедшей конференции, много видео и презентации докладов. Питонисты собрались из 25 городов, среди которых: Сан-Франциско, Париж, Прага, Бонн, Таллин, Минск, Киев, Москва, Санкт-Петербург, Казань, Уфа 

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Модуль SymPy. Пример символьных вычислений.

SymPy - это обширный Python модуль реализующий символьные вычисления. В качестве примера будет разобрана реальная математическая задача.

     20.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Интересные проекты, инструменты, библиотеки

whatsappcli - управляем сервером из Whatsapp

Проект позволяет управлять вашим Unix сервером прям из чата Whatsapp

     20.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Сервис для системного администратора. Часть 1

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

     20.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Интересные проекты, инструменты, библиотеки

MagicPython - подсветка синтаксиса для Sublime Text and Atom.

Плагин для редакторов, который подсвечивает синтаксис Python. Поддерживаются самые свежие фичи языка.

     20.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Релизы
     19.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Синтаксис Python: слайсы/срезы

Синтаксис Python легкий, читаемый. Хочется упомянуть массивы (как структура с последовательными элементами). В Python они бывают разные - list, tuple, строки Операции с массивами:

  • Получить копию
  • Получить первые/последние N элементов
  • Получить N элементом с позиции M
  • Получить каждый N элемент
  • Развернуть

     19.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Синтаксис Python: переменная __all__

Вы наверное слышали фразу "wild import - зло". В коде это выглядит так

from my_super_module import *

Ответ почему это "зло" очень простой - вы импортируете всё - то что надо и то что не надо. А значит вы можете смело перегрузить какой-то метод. Как же быть? Можно импортировать только нужные переменные и функции/классы, что является правильным подходом. Но ведь должен быть альтернативный вариант.

     18.10.2015       Выпуск 95 (12.10.2015 - 18.10.2015)       Статьи

Удалённое исполнение системных команд по запросу через сокеты на Python 3. Протокол передачи данных

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

Так какими же недостатками обладает наше приложение?

  • Отсылается один единственный пакет, длина которого не может превышать заранее заданной границы в 1 Кбайт.
  • Приложение без проверки передаёт аргумент, принятый из сети, в оболочку (URL).
  • Недостаток функциональности. Мы не можем, например, скачать все изображения с Хабра, или скачать отдельный хаб.


Сегодня я расскажу как решить первую проблему, а заодно и немного о TCP.

     17.10.2015       Выпуск 95 (12.10.2015 - 18.10.2015)       Статьи

Удалённое исполнение системных команд по запросу через сокеты на Python 3 или как я сайты скачивал

Не так давно качество мобильного интернета в моём городе стало постепенно ухудшаться из-за возрастающей на сети операторов нагрузки и некоторые сайты, требующие большое количество соединений (зависимые файлы страницы) стали загружаться ну ОЧЕНЬ медленно. По вечерам скорость опускается на столько, что некоторые сайты могут полностью загружаться в течении нескольких десятков секунд.

Есть несколько способов решения данной проблемы, но я решил выбрать немного необычный для нашего времени способ. Я решил скачивать сайты. Конечно, данных способ не подходит для крупных сайтов, вроде Хабра, тут разумнее использовать парсер, но можно скачать и отдельный хаб, список пользователей, или только свои публикации с помощью HTTrack Website Copier, применив фильтры. Например, чтобы скачать хаб Python с Хабра нужно применить фильтр "+habrahabr.ru/hub/python/*".
 

     17.10.2015       Выпуск 95 (12.10.2015 - 18.10.2015)       Интересные проекты, инструменты, библиотеки

healthchecks - Django app для мониторинга

Это исходники проекта https://healthchecks.io, который позволяет пинговать ресурсы и кидать оповещения в чаты, почту или даже использовать веб-хуки.

     17.10.2015       Выпуск 95 (12.10.2015 - 18.10.2015)       Колонка автора

Учебные материалы: сборник ООП паттернов

ООП преподают везде. В школе, в универе, в колледже, на курсах, упоминают в статьях, есть даже много книг на эту тему - например, банда четырех. Важным моментом ОО это паттерны. Это набор узаконенных хитростей и хаков, которые позволяют обходить недостатки самого ООП. По ссылкеhttps://github.com/faif/python-patterns вы сможете найти готовый код для множества паттернов.