Хабрахабр

Песочница и шпаргалка по изучению Python

Мне понравились примеры кода, но, к сожалению, они были там не интерактивными. Изучать Python3 я начал с документации на официальном сайте. Так же мне лично легче запоминаются конструкции языка, если я их набрал несколько раз вручную. Хотелось попробовать выполнить код самостоятельно, с разными входными данными и посмотреть на выводимый результат. И последней каплей стало желание автоматической проверки стиля написания кода в соответствии с существующими стандартами. Python консоль для этого подходит отлично, но хотелось так же иметь своего рода шпаргалку, к которой можно было бы вернуться при написании программ в дальнейшем, если, например, возникнет вопрос, как в Python-е написать цикл for и т.п. Читать и вникать в них было лень, поэтому хотелось чтобы проверка кода была автоматической и подсказывала какие ошибки я делаю и как их исправить.

В итоге все свои эксперименты я вылил на GitHub.

Каждый скрипт содержит примеры кода, с комментариями и примерами использования, а так же со ссылками для дальнейшего более подробного чтения и изучения каждого топика. Репозиторий представляет собой коллекцию Python скриптов, разбитую на категории.

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

Так же, благодаря тому, что код напичкан assertion-нами, пользователи могут проверить ожидаемый результат выполнения функций не запуская их. Репозиторий так же, по моему мнению, является шпаргалкой в том плане, что к нему можно вернуться и вспомнить основные конструкции языка, методы объектов и тому подобное.

Как пользоваться данным репозиторием

Каждый Python скрипт в репозитории имеет следующую структуру:

"""Lists <--- Название раскрываемого топика # @see: https://www.learnpython.org/en/Lists <-- Ссылка для дальнейшего изучения И здесь могут идти общие детали, относящиеся к топику (например что-то про Lists). """ def test_list_type(): """Здесь идет название под-раздела (например "Создание списков" или "Методы списков"). И более детальное описание подраздела... """ # Here is an example of how to build a list. <-- Комментарии, объясняющие код squares = [1, 4, 9, 16, 25] # Lists can be indexed and sliced. # Indexing returns the item. assert squares[0] == 1 # <-- Assertion, иллюстрирующий результат выполнения кода. # Slicing returns a new list. assert squares[-3:] == [9, 16, 25] # <-- Assertion, иллюстрирующий результат выполнения кода.

Поэтому процесс пользования репозиторием может быть следующим:

Разделы репозитория

  1. Getting Started
  2. Operators
    • Arithmetic Operators (+, -, *, /, //, %, **)
    • Bitwise Operators (&, |, ^, >>, <<, ~)
    • Assignment Operators (=, +=, -=, /=, //= etc.)
    • Comparison Operator (==, !=, >, <, >=, <=)
    • Logical Operators (and, or, not)
    • Identity Operators (is, is not)
    • Membership Operators (in, not in)
  3. Data Types
  4. Control Flow
  5. Functions
  6. Classes
  7. Modules
  8. Errors and Exceptions
  9. Files
  10. Additions
  11. Brief Tour of the Standard Libraries

Надеюсь этот репозиторий покажется вам полезным

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть