> **Источник:** https://python-all.ru/3.0/library/idle.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

# IDLE

IDLE – это интегрированная среда разработки (IDE) для Python, построенная на основе [`tkinter`](https://python-all.ru/3.0/library/tkinter.html#module-tkinter) – инструментария графического интерфейса.

IDLE имеет следующие возможности:

- написан на 100% чистом Python с использованием графического инструментария [`tkinter`](https://python-all.ru/3.0/library/tkinter.html#module-tkinter)
- кроссплатформенность: работает в Windows и Unix
- многооконный текстовый редактор с множественной отменой, раскраской синтаксиса Python и многими другими возможностями, например, умными отступами и подсказками при вызове функций
- Окно оболочки Python (также известное как интерактивный интерпретатор)
- отладчик (неполный, но можно устанавливать точки останова, просматривать и выполнять по шагам)

## Меню

### Меню «Файл»

**Новое окно**

создать новое окно редактирования

**Открыть...**

открыть существующий файл

**Открыть модуль...**

открыть существующий модуль (поиск в sys.path)

**Обозреватель классов**

показать классы и методы в текущем файле

**Обозреватель путей**

показать каталоги из sys.path, модули, классы и методы

**Сохранить**

сохранить текущее окно в связанный файл (у несохраненных окон звездочка \* стоит до и после заголовка окна)

**Сохранить как...**

сохранить текущее окно в новый файл, который становится связанным файлом

**Сохранить копию как...**

сохранить текущее окно в другой файл, не изменяя связанный файл

**Закрыть**

закрыть текущее окно (запрашивает сохранение, если не сохранено)

**Выход**

закрыть все окна и выйти из IDLE (запрашивает сохранение, если не сохранено)

### Меню «Правка»

**Отменить**

Отменить последнее изменение в текущем окне (максимум 1000 изменений)

**Повторить**

Повторить последнее отмененное изменение в текущем окне

**Вырезать**

Копировать выделение в системный буфер обмена; затем удалить выделение

**Копировать**

Копировать выделение в системный буфер обмена

**Вставить**

Вставить содержимое системного буфера обмена в окно

**Выделить всё**

Выделить все содержимое буфера редактирования

**Найти...**

Открыть диалоговое окно поиска с множеством параметров

**Найти снова**

Повторить последний поиск

**Найти выделение**

Искать строку в выделении

**Найти в файлах...**

Открыть диалоговое окно поиска файлов

**Заменить...**

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

**Перейти к строке**

Запросить номер строки и показать эту строку

**Увеличить отступ области**

Сдвинуть выделенные строки вправо на 4 пробела

**Уменьшить отступ области**

Сдвинуть выделенные строки влево на 4 пробела

**Закомментировать область**

Вставить ## перед выделенными строками

**Раскомментировать область**

Удалить начальные # или ## из выделенных строк

**Заменить пробелы табуляцией в области**

Превращает

*начальные*

последовательности пробелов в табуляцию

**Заменить табуляцию пробелами в области**

Превращает

*все*

табуляции в нужное количество пробелов

**Дополнить слово**

Дополняет введённое слово до другого слова в том же буфере; повторите, чтобы получить другое дополнение

**Форматировать абзац**

Переформатировать текущий абзац, разделённый пустыми строками

**Импортировать модуль**

Импортировать или перезагрузить текущий модуль

**Запустить скрипт**

Выполнить текущий файл в пространстве имён \_\_main\_\_

### Меню «Окна»

**Развернуть по высоте**

Переключает окно между нормальным размером (24x80) и максимальной высотой.

Остальная часть этого меню содержит список всех открытых окон; выберите одно, чтобы вывести его на передний план (при необходимости развернув из свёрнутого состояния).

### Меню «Отладка» (только в окне Python Shell)

**Перейти к файлу/строке**

ищет вокруг точки вставки имя файла и номер строки, открывает файл и показывает строку.

**Открыть просмотрщик стека**

показать трассировку стека последнего исключения

**Переключение отладчика**

Выполнять команды в оболочке под отладчиком

**Переключение просмотрщика стека JIT**

Открыть просмотрщик стека по трассировке

## Основы редактирования и навигации

- `Backspace` удаляет символ слева; `Del` удаляет символ справа
- Клавиши со стрелками и `Page Up`/`Page Down` для перемещения
- `Home`/`End` переход к началу/концу строки
- `C-Home`/`C-End` go to begin/end of file
- Некоторые привязки клавиш **Emacs** также могут работать, включая `C-B`, `C-P`, `C-A`, `C-E`, `C-D`, `C-L`

### Автоматический отступ

После оператора, открывающего блок, следующая строка получает отступ в 4 пробела (в окне оболочки Python – один табулятор). После некоторых ключевых слов (break, return и т.д.) отступ следующей строки уменьшается. В начале строки `Backspace` удаляет до 4 пробелов, если они есть. `Tab` вставляет 1–4 пробела (в окне оболочки Python – один табулятор). См. также команды увеличения/уменьшения отступа в меню правки.

### Окно оболочки Python

- `C-C` прерывает выполнение команды
- `C-D` отправляет признак конца файла; закрывает окно, если набрано в приглашении `>>>`
- `Alt-p` извлекает предыдущую команду, совпадающую с введённым текстом
- `Alt-n` извлекает следующую
- `Return`, находясь на любой предыдущей команде, извлекает эту команду
- `Alt-/` (Expand word) также полезно здесь

## Цвета синтаксиса

Раскраска применяется в фоновом «потоке», поэтому иногда можно увидеть неокрашенный текст. Чтобы изменить цветовую схему, отредактируйте раздел `[Colors]` в `config.txt`.

**Цвета синтаксиса Python:**

**Ключевые слова**

оранжевый

**Строки**

зелёный

**Комментарии**

красный

**Определения**

синий

**Цвета оболочки:**

**Вывод консоли**

коричневый

**stdout**

синий

**stderr**

тёмно-зелёный

**stdin**

чёрный

### Использование командной строки

```python
idle.py [-c command] [-d] [-e] [-s] [-t title] [arg] ...

-c command  run this command
-d          enable debugger
-e          edit mode; arguments are files to be edited
-s          run $IDLESTARTUP or $PYTHONSTARTUP first
-t title    set title of shell window
```

Если есть аргументы:

1. Если используется *-e*, аргументы – это файлы, открытые для редактирования, а `sys.argv` отражает аргументы, переданные самой IDLE.
2. В противном случае, если используется [*-c*](https://python-all.ru/3.0/using/cmdline.html#cmdoption-c), все аргументы помещаются в `sys.argv[1:...]`, при этом `sys.argv[0]` устанавливается в `'-c'`.
3. В противном случае, если ни *-e*, ни [*-c*](https://python-all.ru/3.0/using/cmdline.html#cmdoption-c) не используется, первый аргумент – это сценарий, который выполняется, а остальные аргументы помещаются в `sys.argv[1:...]`, и `sys.argv[0]` устанавливается в имя сценария. Если имя сценария – «-», сценарий не выполняется, но запускается интерактивный сеанс Python; аргументы по-прежнему доступны в `sys.argv`.
