Лутц М. - Изучаем Python (1077325), страница 20
Текст из файла (страница 20)
Если возникает потребность импортировать модули из других каталогов, отличных от того, в котором вы работаете, они должны быть перечислены в переменной РУТНОНРАТН. За дополнительной информацией обращайтесь к главе 18. Пользовательский интерфейс!01 Е До сих пор мы рассматривали запуск программного кода Ру!Ьоп с помощью интерактивной командной строки интерпретатора, системной командной строки, с помощью щелчка мышью на ярлыке и с исполь- 93 Пользовательский интерфейс 1ОсЕ зованием операции импорта.
Если вам требуется более наглядный подход, интегрированная среда ПН,Е может предложить вам графический интерфейс пользователя (ГИП) для разработки программ на языке Руь)топ; 10ЬЕ является стандартной и свободно распространяемой частью системы Ру$)топ. Обычно она называется интегрированной средой раз. работки (1п$едга(ес) деуе1оршеп1 епу1гопшеп$„1ВЕ), потому что позволяет решать разнообразные задачи в единой оболочке.' Проще говоря, 1РЬŠ— это набор инструментальных средств с графическим интерфейсом, который способен работать на самых разных платформах, включая М(сговой 'тК1пс(отче, Х т(Г(пс(отч (в 1!ппх, 'УЫ1Х и других ()Ы1Х-подобных операционных системах) и Мас ОЯ (включая версии С1авв1с и ОЯ Х).
Для многих 1РЬЕ представляет собой удобную альтернативу командной строке, а также альтернативу способу запуска щелчком мыши. Основы 101.Е Давайте начнем с примера. Запуск 10ЬЕ в операционной системе тт (пс(отче не вызывает проблем — для нее создается отдельный пункт в разделе Ру(йоп меню кнопки Пуск (51ат() (рис.
2.1), а кроме того, ее можно запустить, выбрав пункт контекстного меню, щелкнув правой кнопкой мыши на ярлыке программы, написанной на языке Ру()топ. В некоторых ()Ы1Х-подобных системах для запуска начального сценария 10ЬЕ может потребоваться использовать командную строку или щелкнуть мышью на ярлыке файла Ы1е руи> или Ы1е.ру, размещенного в подкаталоге Ы1еПЬ в каталоге ИЬ, где установлен интерпретатор Ру1)топ. (В тт'1пс(отче Пи Е является сценарием РуФ)топ, который по умолчанию находится в каталоге С:'труЯол25'тЬ(Ь'тЫ1е11Ь.г) На рис.
3.3 показано, как выглядит среда П)ЬЕ, запущенная в операционной системе Ж1пс(оъчз. Окно с заголовком Ру(Ьол 5Ьей (Оболочка Ру(пол), которое открывается первоначально, является основным окном среды, в котором запускается интерактивный сеанс работы с интерпретатором (обратите внимание на приглашение к вводу»>). Это самый Официально название 1ЭЬЕ считается искаженной аббревиатурой 1РЕ, но в действительности она была названа так в честь члена труппы цирка Монти Пайтона (Молгу Ру()топ) — Эрика Эйдла (Ег(с Ы1е).
1РЬŠ— это программа на языке Рус)топ, которая создает графический интерфейс с помощью библиотеки ТМлсег ОШ, что обеспечивает ее переносимость, во также означает, что для использования 1ВЬЕ вам придется обеспечить поддержку ТМп(ег з Рут)зол. Версия Рут)тол для Ът(лдотгз обладает такой поддержкой по умолчанию, но некоторым пользователям Мпцх н((Ы1Х может потребоваться установить соответствующую поддержку ТМпьег (для этого в некоторых дистрибутивах 1лпцх можно использовать команду усе тх(лтег, более подробные сведения об установке вы найдете в приложении А). В системе Мас 03 Х все необходимое может быть уже установлено — поищите на своей машине команду тс1е.
94 Глава 3. Как пользователь запускает программы обычный интерактивный сеанс, который играет роль инструмента проведения экспериментов, — программный код, который здесь вво- дится, немедленно исполняется. О Совет дня: если потребуется повторно выполнить команду в основном окне интерактивного сеанса в среде ПЕ Е, можно воспользоваться комбинацией АК-Р, выполняющей последовательный переход к началу истории команд, и А(ЬИ, выполняющей переход к концу истории команд (в некоторых системах Мас вместо этих комбинаций могут использоваться комбинации Ст»РР н СЫ-Н). При нажатии этих комбинаций клавиш вы сможете вызывать предыдущие команды, изменять их и запускать. Кроме того, имеется возможность повторно вызывать команды, позиционируя в ннх курсор, и использовать операцию «скопировать и вставить»„но часто это оказывается более трудоемко, чем ввести вручную.
Вне среды разработки ПСЕ, в ходе интерактивного сеанса работы с интерпретатором в системе угт1пг)отта, можно повторно возвращаться к предыдущим командам с помощью клавиш управления курсором. В Ш1 Е присутствуют привычные пункты меню и для выполнения наиболее распространенных операций имеются короткие комбинации клавиш. Чтобы создать (или отредактировать) файл с исходным программным кодом в среде 1ПВЕ, откройте окно текстового редактора: в главном окне откройте меню Рйе (Файл) и выберите пункт Нее )У(лбов (Новое окно), чтобы открыть окно текстового редактора (или Орел... (Открыть)— чтобы отредактировать существующий файл). В результате на экране появится новое окно.
Это окно текстового редактора среды ПН Е, где создается или изменяется программный код. В книге это недостаточно четко видно, но ПИ Е обеспечивает подснет. ку синтаксиса программного кода, который вводится как в главном окне, так и во всех окнах текстового редактора, — ключевые слова выделяются одним цветом, литералы другим цветом, и т. д. Это позволяет визуально выделять элементы программного кода. Чтобы запустить файл с программным кодом в среде 1Р1Е, выберите окно, где редактируется текст, раскройте меню кпп (Запустить) и выберите в нем пункт коп Мобо(е (Запустить модуль) (или воспользуйтесь соответствующей этому пункту меню горячей комбинацией клавиш).
Если с момента открытия или последнего сохранения файла его содержимое изменялось, Руь)тотт предложит сохранить его. Когда сценарий запускается таким способом, весь вывод, который он генерирует, а также все сообщения об ошибках появляются в основном окне интерактивного сеанса работы с интерпретатором (командная оболочка Рус)топ). Например, на рис. 3.3 последние три строки являются результатом выполнения сценария, открытого в отдельном окне редактирования. Сообщение «ВЕЯТАВТ» говорит о том, что пользовательский процесс был перезапущен с целью выполнить отредактированный сценарий, и позволнет визуально отделить вывод, полученный от сценария.
96 Глава 3. Как пользователь запускает программы строки), но не сможете импортировать его в интерактивную командную оболочку или в другой модуль. ° Запускайте сценарии, выбирая пункт меню поп — >кол Модо(е в окне редактирования, а не за счет их импортирования или перезагрузки в окне интерактивного сеанса. Ранее в этой главе было показано, что вполне возможно запустить файл, выполнив операцию импортирования в интерактивной оболочке интерпретатора. Однако такой способ несет определенные сложности, потому что он требует вручную выполнять перезагрузку файлов после внесения изменений.
В противовес ему пункт меню кип-ькип Модо(е всегда приводит к запуску текущей версии файла. Кроме того, в случае необходимости будет предложено сохранить файл (еще одна распространенная ошибка при работе вне среды 1РЬЕ). ° Вам по-прежнему может потребоваться выполнять перезагрузку импортируемых модулей. Пункт меню кип — >поп Модо(е в среде 1РЬЕ всегда запускает текущую версию только файла верхнего уровня. Если изменениям подвергались модули, импортируемые сценарием, их необходимо будет перезагрузить вручную в интерактивной оболочке. Но, несмотря на это, использование пункта меню коп-+ квп Модо(е позволяет избавиться от некоторых ошибок, связанных с операцией импортирования.
Если вы предпочитаете использовать операции импортирования и перезагрузки, не забывайте о комбинациях клавиш А!1-Р и А11-Н, позволяющих возвращаться к ранее запускавшимся командам. ° Вы можете настроить 1Р1.Е. Чтобы изменить шрифты или цвета в ЮЬЕ, выберите пункт Сопйдвге (Настройка) в меню Орйопз (Параметры) в любом окне ПН Е. Кроме того, вы сможете настроить комбинации клавиш, настройки отступов и многое другое.
Более подробные сведения вы сможете получить в меню Не1р (Справка) среды 1Р1 Е. ° В настоящее время в 1РЬЕ отсутствует возможность очистки экрана. Похоже, что эта возможность является наиболее востребованной (возможно потому, что она присутствует в похожих интегрированных средах разработки), и в конечном счете когда-нибудь она будет добавлена. Однако в настоящее время нет никакой возможности выполнить очистку окна интерактивного сеанса. Если вам потребуется очистить окно, вы можете нажать и удерживать некоторое время клавишу Сп1ег или написать цикл на языке Ру1)топ, который будет выводить последовательность пустых строк.
° Многопоточные программы с графическим интерфейсом на базе ТЫп(ег могут не работать со средой 1РЬЕ. Из-за того, что 1РЬЕ сама является программой Ру1)топ/ТЫпсег, она может зависать при запуске некоторых типов программ на языке РуФ)топ, использующих библиотеку ТЫпсег. В более свежих версиях 1РЬЕ проблем с этим стало меньше — благодаря тому, что пользовательский программный код запускается в виде одного процесса, а сам графический интерфейс 97 Пользовательский интерфейс10сЕ ЮЬЕ работает в виде другого процесса, но некоторые программы по- прежнему могут вызывать зависание графического интерфейса ЮЬЕ.
Ваш программный код может и не вызывать проблем такого рода, однако существует эмпирическое правило: вы без опаски можете использовать ЮЬЕ для редактирования исходных текстов программ с графическим интерфейсом, но для их запуска желательно использовать другие способы, например щелчком мыши на ярлыке или из системной командной строки.
Если ваш программный код не работает в ЮЬЕ, попробуйте запустить его за пределами среды разработки. ° Если возникают ошибки соединения, попробуйте запустить ЮЬЕ ввиде единого процесса. Из-за того, что для нормальной работы П)ЬЕ необходимо поддерживать взаимодействие между пользовательским процессом и графическим интерфейсом среды разработки, на определенных платформах могут проявляться проблемы с запуском (особенно часто проблема с запуском встречается на некоторых машинах т(т!пс(отуэ).
Если вам доведется столкнуться с такими ошибками, попробуйте запустить ЮЬЕ из командной строки, что вынудит ее запуститься в виде единственного процесса и позволит избежать проблем с поддержанием соединения; для принудительного запуска в этом режиме используйте флаг -и. Например, в операционной системе %|пс(отта откройте программу Командная строка (Солнлапд Ртотрт) и запустите команду то1е. ру -п из каталога С."тРутйоп25'тЬтЬ 'тЫ1еПЬ (перед этим, в случае необходимости, выполните команду сс).