Собрали в одном месте самые важные ссылки
читайте нас в Twitter
Ох, далеко не весь код "красив". Бывает такая лапша, что без бутылки не разобраться.
Вот только вместо бутылки обычно используют отладчики, логгирование и прокручивание всего алгоритма/состояний в голове.
Python обладает большой экосистемой. Прямо с языком поставляется большой набор "батареек". Здесь и работа с кодировками, почтой, файлами, операционной системой, сокеты и работа с сетью, время, календари, математика и много еще чего. (Кстати, рекомендую почитать документацию).
Побродив по страницам Python wiki можно найти необычную страницу.https://wiki.python.org/moin/SimplePrograms
На странице размещены простые, короткие примеры программ
Python дайджест - это крупный русскоязычный агрегатор Python новостей с кучей ссылок. Больше 10 тысяч ссылок уже собрали. Но в таком море контента тяжело ориентироваться и постоянно в голове вопрос "Как показать пользователю только релевантную информацию?".
Вот и подоспело второе обещание - видео. Это первое видео, поэтому включите в себе максимального критика и расскажите о недостатках и достоинствах.
Краткое описание: "Коротко о..." - проект PyNSK направленный на запись цикла небольших видео (до 5 минут)для новичков. В этих видео будет рассказаны основные знания про конструкции языка, модули стандартной библиотеки и инструменты необходимые при разработке программ на Python
Было записано первое видео - о списках. Из видео новички смогут узнать основные знания о списках (list). Видео очень короткое и сжатое.
Однажды возникло два желания:
Мы соединили два желания и начали писать. Проект двигался не спешно, шаг за шагом, строчка за строчкой, вопрос за вопросом. И вот, мы готовы представить первую версию (о багах пишите в комментариях или в личку).
Tests.pynsk.ru - это платформа для тестирования на основе telegram бота.
Оператор присваивания в Python не копирует объект, он создает ссылку между переменной и объектом. Для коллекций, которые могут изменяться или содержать изменяемые элементы это не всегда верная стратегия.
Например, набор данных (пускай список чисел) и N различных обработок этих данных (сортировки, срезы). Стоит задача - в конце обработки вывести все изменения данных по шагам. Для решения задачи необходимо хранить копии данных на каждом из этапов.
Программист время от времени сталкивается с необходимостью ограничить множество допустимых значений для некоторого типа данных. Например, день недели это 7 различных значений, а месяцев у нас 12. Для удобного хранения подобных данных придуманы перечисления - enum.
Стандартная реализация enum появилась в Python начиная с версии 3.4 ( PEP 435. До этого ее легко заменяли словарями. Реализация представлена модулем enum. Модуль содержит несколько классы Enum, IntEnum (константы могут иметь только тип int) и декоратор unique, который проверяет ваш набор констант на дубликаты.
Уже давно фраза "я тебя вычислю по IP" реальна.
Хочется представить очень простой инструмент для определения местоположения по IP - GeoIP. Рассматривать GeoIP стоит как базу данных соответствия интернет и физических адресов. Базы могут отличатся точностью - одна точно определяет страну, а друга может дать точность до улицы.
unittest - инструмент для тестирования в Python. Это стандартный модуль для написания юнит-тестов на Python. Unittest это порт JUnit с Java. Иными словами, и в коде модуля, и при написании тестов легко прослеживается ООП стиль, что весьма удобно для тестирования процедур и классов.
Документация доступна по следующим ссылкам: python3, python2
В данном инструменте много возможностей: проверки (assert*), декораторы, позволяющие пропустить отдельный тест (@skip, @skipIf) или обозначить сломанные тесты (@expectedFailure) и этим не заканчивается список. Использование assert'ов с лихвой покрывает нужды при написании тестов.
Полезная черта unittest - автоматизированное тестирование. Есть и другие:
Этот урок имеет вводный характер и знакомит с общей информацией о тестировании и простой конструкцией, которая позволяет значительно улучшить Python-код.
Тестирование программного обеспечения (Software Testing) - проверка соответствия между реальным и ожидаемым поведением программы, осуществляемая при конечном наборе тестов, выбранном определенным образом. [IEEE Guide to Software Engineering Body of Knowledge, SWEBOK, 2004]
REPL (Read-eval-print loop) — простая интерактивная среда программирования.
В такой среде пользователь может вводить выражения, которые среда тут же будет вычислять, а результат вычисления отображать пользователю. Название read-eval-print loop происходит от имён примитивов языка Lisp, которые реализуют подобную функциональность
Зачем нужен REPL? Очевидно что REPL нужен для обучения, проверки каких-то идей/кода, чтобы вспомнить как работает какой-то метод, для замены калькулятора, иными словаи когда цикл "Написал код -> запустил -> посмотрел результат" должен быть минимальным по времени.
“A Byte of Python” – это свободная книга по программированию на языке Python. Она может служить учебным пособием или руководством по языку Python для начинающей аудитории. Если ваши знания о компьютере ограничиваются тем, как сохранять текстовые файлы, эта книга для вас.
Книга короткая - 150 страниц и рассказывает самые-самые важные аспекты для начала.
В продолжение статьи про одноплатные компьютеры мы приступим к их рассмотрению и работы с ними более детально (примеры будут показаны на платах Raspberry Pi (RPi), OrangePi и PcDuino). Начнем с управления светодиодом. В этом и дальнейших материалах будут использоваться за основу давно существующие материалы и будут использованы для создания наших проектов.
Начнем мы с управления светодиодом. Будут представлены несколько методов управления и возможные варианты в дальнейших ваших разработках.
В этом уроке вы узнаете о важном средстве языка, без которого крупная программа не может обойтись. Речь пойдет об исключениях. Что это такое, как ими пользоваться и как создавать собственные?
Исключительные ситуации или исключения(exceptions) - это ошибки, обнаруженные при исполнении. Например, к чему приведет попытка чтения несуществующего файла? Или если файл был случайно удален пока программа работала? Такие ситуации обрабатываются при помощи исключений.
Если же Python не может понять, как обойти сложившуюся ситуацию, то ему не остается ничего кроме как поднять руки и сообщить, что обнаружил ошибку.
В общем, исключения необходимы, чтобы сообщать программисту об ошибках.
Продолжаем писать проект "Страница со статистикой отжимания" с помощью flask + google chart's.
В этой части дополним шаблон javascript'ом, продумаем и реализуем сохранение/загрузки истории.
Ранее создан базовый проект flask и html файл с текстом Hiiii.
При разработке http библиотек периодически возникает необходимость обработки граничных, да и не только граничных, условий:
Общее в этих примерах механизм - из своего кода вы посылаете запрос и ожидаете четкий ответ. Если чат и ожидаете картинку - то в ответе должно быть изображение.
И к счастью, реализация подобного механизма уже есть - httpbin.