Основы IDLE в Python: от запуска до первой программы
Среда разработки, которая приходит вместе с Python, но о ней почти никто не знает.
Иллюстрация: Оля Ежак для Skillbox Media
IDLE — это стандартная среда разработки Python, которая помогает учить язык программирования и подходит для написания простых программ.
Содержание
Что такое IDLE
IDLE (integrated development and learning environment) — среда разработки для написания кода на языке Python. Фактически она состоит из двух частей: редактора кода и интерпретатора команд, который также называют интерактивной оболочкой, или IDLE Shell. В среду разработки интегрирован отладчик кода, облегчающий поиск и исправление ошибок.
IDLE — это кросс-платформенное приложение, которое работает на Windows, macOS и Linux. Оно написано на Python и Tkinter — библиотеке для создания графических пользовательских интерфейсов (GUI).
Функциональность у IDLE намного ниже, чем у продвинутых IDE, например PyCharm или VS Code. Она не подойдёт для крупных проектов с большим количеством файлов, где требуется точно настроить параметры отладки и провести глубокий анализ кода. Но в ней можно решать задачи и изучать Python, быстро проверяя написанный код.
К достоинствам IDLE можно отнести её небольшой размер и быструю работу. Она весит всего несколько мегабайт и не требует отдельной установки, так как устанавливается на компьютер вместе с Python.
Запуск IDLE в Python
Мы будем работать с IDLE в Windows. В других операционных системах среда разработки функционирует аналогично. Единственное различие — на macOS для горячих клавиш используйте ⌘ вместо Alt.
Войдите в меню Пуск и найдите раздел Python 3.x, где x — номер версии Python, которая установлена на компьютере. В разделе находится ярлык для запуска IDLE:
Второй путь — откройте поисковую строку рядом с меню Пуск. Введите в ней IDLE.
IDLE работает в двух режимах: интерактивном режиме (Shell Mode) и режиме редактирования (Edit Mode). Рассмотрим каждый из них подробнее.
Работа в интерактивном режиме
Интерактивный режим используется для быстрой проверки кода и обучения языку. Написанный в нём код сразу же выполняется, без сохранения в файл. Чтобы начать работу в интерактивном режиме, просто кликните на ярлык IDLE и запустите программу.
Открывшееся окно будет похоже на терминал или командную строку. Набранный код можно сразу же запустить для получения результата:
Интерактивный режим также называется Python REPL (read-eval-print loop): read — интерпретатор считывает команды, eval — выполняет их, print — выводит результат, loop — повторяет этот цикл.
Интерактивный режим для написания программ используют редко. Но в некоторых случаях он может быть полезен:
- Быстрое тестирование работоспособности кода. IDLE удобно использовать для проверки выражений и функций.
- Обучение программированию на Python. В процессе чтения книг или просмотра видео полезно повторять код за автором или преподавателем. В IDLE это можно делать быстро, не думая о создании и сохранении файлов программы.
- Пошаговое выполнение кода для просмотра изменений в значениях переменных и поиска ошибок. Для этого потребуется запустить режим отладки, про который мы поговорим дальше.
- Проверка работоспособности и тестирование библиотек и модулей до их внедрения в приложение. Можно загрузить свой проект, импортировать новые библиотеки и посмотреть на их сочетаемость и возникающие ошибки.
Как запустить интерактивный режим
Интерактивный режим открывается по умолчанию при запуске IDLE. Если вы хотите перейти в него из режима редактирования, выберите в меню опцию Python Shell.
Интерактивную оболочку также можно перезапускать, не закрывая и не перезагружая всю среду IDLE. Для этого выберите в главном меню Shell → Restart Shell или используйте горячие клавиши Ctrl + F6. Весь предыдущий вывод, переменные и состояние будут утеряны, и вы начнёте работу с чистого листа.
Для примера запустим бесконечный цикл, который запрашивает число и выводит его на печать, и прервём его выполнение:
Если бы мы не прервали выполнение через меню, то программа продолжила бы запрашивать у нас числа.
Чтобы облегчить работу с кодом, IDLE предлагает несколько функций, которые доступны в обоих режимах: автоматическую расстановку отступов, подсветку синтаксиса, подсказки к коду, автозавершение фраз и конструкций и вывод истории команд.
Отступы
IDLE автоматически добавляет отступы с учётом предыдущего уровня вложенности. По умолчанию используется отступ в четыре пробела.
Таким образом, каждый новый уровень вложенности кода создаётся при добавлении четырёх пробелов перед строкой кода.
В интерактивном режиме используются символы … для указания на блок кода с отступами. Их видно в левой части окна:
Отступы автоматически добавляются при вводе циклов for, while, условных операторов if, else, elif и функций. Если вы напечатаете выражение pass, return, break, continue, raise и нажмёте Enter, каретка автоматически вернётся к предыдущему уровню отступов.
Подсветка
Чтобы упростить чтение кода, в среде IDLE используется подсветка синтаксиса (syntax highlighting). Это визуальное выделение элементов кода, при котором некоторые его части — ключевые слова, строки, комментарии, числа и операторы — будут окрашены в разные цвета в зависимости от своего функционального назначения.
Подсветка синтаксиса включена по умолчанию. Её параметры можно настроить в Options → Configure IDLE → Highlighting. В открывшемся окне можно изменить цвет частей кода и фона, создать собственный стиль подсветки или выбрать готовый. Чтобы сохранить изменения, нажмите Apply или Ok.
Выберем тему IDLE Dark и красный цвет для комментариев. Теперь весь код будет подсвечен именно так, как показано в окне программы:
Подсказки
Они облегчают работу с функциями, особенно когда необходимо передать несколько аргументов.
Когда вы набираете открывающую скобку после имени функции, IDLE автоматически покажет подсказку, в которой будут указаны её аргументы и их описание. Чтобы выбрать предложенный аргумент из списка, нажмите Enter.
Подсказка будет отображаться до тех пор, пока вы не закроете скобку.
Автозавершение фраз и конструкций
IDLE поддерживает функцию автозавершения, которая автоматически завершает фразы и названия переменных.
Когда вы начнёте вводить название переменной или функции, нажмите Tab или Alt + /, и программа предложит дополнить его. Если есть несколько вариантов, то они будут показаны в виде списка. Для выбора нужного элемента из него нажмите горячую клавишу ещё раз.
История команд
Вы можете повторно использовать предыдущие команды без их перепечатывания:
- Чтобы перейти к предыдущей команде в интерактивном режиме, установите курсор на новую строку и используйте комбинацию клавиш Alt + P.
- Чтобы перейти к следующей команде, нажмите Alt + N.
- Чтобы использовать найденную команду, установите курсор в её конец и нажмите Enter.
Работа в режиме редактирования
Этот режим схож с аналогичными режимами в других редакторах кода и IDE. В нём можно создавать проекты и сохранять написанный код в файлы.
Чтобы войти в режим редактирования, создайте новый файл или откройте существующий в формате .py. Для этого выберите в главном меню File → New file или File → Open.
Откроется окно редактора кода.
Режим редактирования включает все возможности интерактивного режима: подсветка синтаксиса, автозавершение фраз и конструкций и так далее. Чтобы лучше разобраться в редакторе, попрактикуемся с кодом.
Пишем первую программу в IDLE
Наша программа будет вычислять сумму двух чисел, которые вводит пользователь. Запустим IDLE и выберем в главном меню File → New file (можно нажать CTRL + N). В открывшемся редакторе напишем код:
Что делает код:
- Запрашивает у пользователя ввод первого числа.
- Запрашивает у пользователя ввод второго числа.
- Вычисляет сумму введённых чисел.
- Выводит результат на экран.
Теперь, чтобы запустить программу, выберите в главном меню Run → Run Module или нажмите F5. Перед запуском программа предложит сохранить код в файл:
Папку и название файла выбираем сами:
После сохранения файла автоматически запустится интерактивный режим и начнётся выполнение кода.
Введём оба числа, и программа выдаст нам их сумму:
Отладка
Начинающим разработчикам может быть сложно найти ошибки в своём коде. Для этого в IDLE предусмотрен отладчик. Он помогает искать ошибки и исправлять их.
Для работы с отладчиком запустите IDLE в режиме Shell и выберите в главном меню Debug → Debugger. Откроется окно отладки:
Здесь можно узнать значения локальных и глобальных переменных, а также перемещаться по коду с помощью кнопок:
- Go — выполняет код до следующей точки останова.
- Step — выполняет следующую строку кода и приостанавливает программу.
- Over — выполняет следующую строку кода, но если это функция, то будет вызвана сама функция и выполнен весь её код.
- Out — запускает выполнение строк кода в обычном режиме до тех пор, пока не будет выполнен возврат из текущей функции.
- Quit — останавливает выполнение программы.
В окне отладчика есть четыре флажка, позволяющие контролировать процесс отладки:
- Globals: глобальные переменные.
- Locals: локальные переменные.
- Stack: вызываемые функции.
- Source: исходный код в открытом файле.
В зависимости от их выбора, мы можем настроить процесс отладки. Например, выбрав Locals, мы увидим, как меняются локальные переменные при выполнении кода.
Посмотрим, как это работает. Откройте программу в режиме редактирования и запустите отладку. Теперь у вас на экране три окна: интерактивный режим, редактор кода и отладчик.
Установите точки останова — это строки кода, где интерпретатор приостанавливает его выполнение. Разработчики обычно размещают точки останова в тех частях кода, где они предполагают наличие проблем, или в местах, где они хотят подробно изучить работу программы. Например, проверить значения переменных.
Нажмите правой кнопкой мыши на нужную строку кода и выберите пункт меню Set Breakpoint. Выбранная строка подсветится жёлтым цветом. Чтобы удалить точку останова, нужно нажать Clear Breakpoint.
Мы установили две точки останова: одну в основной части кода, другую в функции calculate_sum (). Теперь, если вы нажмёте на кнопку Go в отладчике, код будет выполняться до первой точки останова. Чтобы дойти до второй точки, нажмите на кнопку Over. Для завершения нажмите Out.
Если в интерпретаторе появилось сообщение об ошибке, можно перейти к строке или файлу, которые вызвали эту ошибку. Для этого нужно выделить курсором имя строки или файла и выбрать в строке меню Debug → Go to file/line.
Подведём итоги
Резюме по тому, о чём рассказали в статье:
- IDLE — среда разработки на языке Python с ограниченной функциональностью. Её можно использовать для обучения, решения несложных задач и разработки небольших проектов.
- Среда разработки работает в двух режимах: интерактивном, где код выполняется пошагово, и в режиме редактора, где можно создавать, редактировать и сохранять программы в файлы.
- В IDLE можно искать ошибки с помощью отладчика: запускать режим отладки в интерпретаторе, настраивать точки останова, выполнять трассировку кода, отслеживать значения переменных.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!