Задачи, Статьи, Недельный Python Дайджест, FAQ, Курсы по Python, Видео-уроки, Скринкасты
PyNSK
проект про Python
httpbin - инструмент для тестирования HTTP библиотек и кусков кода
При разработке http библиотек периодически возникает необходимость обработки граничных, да и не только граничных, условий:
- Как происходит обработки 404-ошибки.
- Если это чат - то как отображаются картинки, текст
- Как происходит обработка различных кодировок
- Если прокси, то как убедиться в анонимности прокси-сервера(т.е. http-заголовок не содержит вашего реального IP)
Общее в этих примерах механизм - из своего кода вы посылаете запрос и ожидаете четкий ответ. Если чат и ожидаете картинку - то в ответе должно быть изображение.
И к счастью, реализация подобного механизма уже есть - httpbin.
Пишем простые проекты. Проект #1. Часть #2
Продолжаем писать проект "Страница со статистикой отжимания" с помощью flask + google chart's.
В этой части дополним шаблон javascript'ом, продумаем и реализуем сохранение/загрузки истории.
Ранее создан базовый проект flask и html файл с текстом Hiiii.
Python уроки: исключения (exceptions)
В этом уроке вы узнаете о важном средстве языка, без которого крупная программа не может обойтись. Речь пойдет об исключениях. Что это такое, как ими пользоваться и как создавать собственные?
Исключительные ситуации или исключения(exceptions) - это ошибки, обнаруженные при исполнении. Например, к чему приведет попытка чтения несуществующего файла? Или если файл был случайно удален пока программа работала? Такие ситуации обрабатываются при помощи исключений.
Если же Python не может понять, как обойти сложившуюся ситуацию, то ему не остается ничего кроме как поднять руки и сообщить, что обнаружил ошибку.
В общем, исключения необходимы, чтобы сообщать программисту об ошибках.
memoryviews - меньше копирований объектов
В Python есть несколько типов для работы с бинарными данными - byte, bytearray, memoryview
Memoryview объекты (согласно документации) позволяют Python-коду(а не C_API) обращаться к внутренним данным объекта, который поддерживает protocol buffer. И работать с этими данными без копирования.
В словах без копирования основная польза для программиста.
django-ipware - определяем IP пользователя
Наверное, вы сталкивались с письмами от google, с содержанием аля "В ваш аккаунт зашли с IP-адреса <такого-то>, что делать?". Чтобы реализовать такую логику необходимо записывать историю входов и ip-адрес.
Для django есть небольшой модуль - django-ipware, который самостоятельно разбирает HTTP(s) запрос. Модуль вычитывает необходимые поля запроса и возвращает адрес пользователя.
Пишем простые проекты. Проект #1. Часть #1
Нудное введение:
Замечено, что новичкам трудно перейти от теории к практике - заставить себя писать, а не только читать. Чтобы помочь мы постоянно публикуем различный материал и указываем как применить эти знания на практике.
В этот раз решили написать 2 небольших проекта:
- Первый - страница со статистикой отжимания. Будет показано, как с помощью flask + google chart's сделать проект для сохранения и визуализации количества отжиманий.
- Второй - vk2rss - сервис для преобразования стен групп ВКонтакте в RSS. Будет рассмотрен парсинг, работа с VK API, создание простого GUI.
Оба проекта будут описаны в виде текста. А следующие попробую записать в виде скринкаста (Это ведь интересней?)
Сборники задач. Часть 2
Теория без практики - это ничто. Предлагаем ссылки на сборники задач.
Сборники задач. Часть 1
Теория без практики - это ничто. Предлагаем ссылки на сборники задач.
ipaddress - работаем с IPv4/v6
Модуль ipaddress упрощает создание, редактирование, манипуляцию с IP-адресами и сетями начиная с Python 3.3. (тогда он появился)
pathlib - объектно-ориентированный подход к файловым путям
Python 3.4 добавил модуль pathlib. Этот модуль содержит классы, представляющие файловые пути с семантикой, подходящих для различных операционных систем.