2-й час. Интерпретатор Python

2-й час

Интерпретатор Python

  В этой главе Вы познакомитесь с интерпретатором Python, узнаете, чем компилируемые языки отличаются от интерпретируемых, что такое IDLE и как запускать это приложение. И самое главное — мы напишем и запустим на выполнение нашу самую первую программу на Python.

Интерпретатор: краткие сведения

  Существуют две основные категории языков программирования: компилируемые и интерпретируемые. Компилируемые программы отличаются своей быстротой, но интерпретируемые приложения, как правило, проще в использовании и отладке. Компилируемые языки отличаются тем, что сначала программист набирает код программы с помощью какого-либо текстового редактора и сохраняет результат в виде файла. После того как текст программы записан в файл, программист запускает специальную программу, называемую компилятором, которая обрабатывает этот сохранённый файл. Компилятор считывает код источника (код источника — это как раз то, что Вы набираете в текстовом редакторе и сохраняете в файле) и преобразовывает ключевые слова языка (т.е. команды, удобные для чтения и понимания с точки зрения человеческой логики) в инструкции машинного кода, который понятен только компьютеру. После завершения компиляции машинный код в двоичном формате записывается в специальный файл. В DOS и Windows имя этого файла обязательно заканчивается расширением .ехе, которое сообщает операционной системе, что этот файл является выполняемым. На машинах с UNIX операционная система предоставляет программисту особую процедуру, которая позволяет отметить как выполняемый файл, содержащий инструкции в машинном коде. В любом случае, чтобы запустить программу на выполнение, пользователь может просто ввести в командной строке соответствующего окна (или интерфейса) имя файла (расширение .ехе, если файл его имеет, в DOS и Windows можно даже пропустить). Большая часть всех крупных приложений, таких как текстовые редакторы, Web-броузеры и программы обработки баз данных, созданы именно таким образом.

  Редактор — это программа, которая позволяет пользователю вводить в её рабочее окно инструкции, данные и комментарии в виде текста и сохранять в файле набранную текстовую информацию. В качестве примера редактора можно привести программу vi из UNIX и Блокнот из Windows.

      *Прим. В. Шипкова: я пользуюсь плагином SynPlus, который является одним из многочисленных плагинов к файловуму менеджеру Total Commander.

  В отличие от компилируемых языков программирования, с помощью интерпретируемых языков нельзя создавать выполняемые файлы. Программы, написанные на языке интерпретатора, могут выполняться одним из двух способов: в интерактивном (диалоговом) режиме или в пакетном. Выполнение программы в интерактивном режиме часто доставляет определённые неудобства, поскольку программист сначала должен запустить программу, называемую интерпретатором (для Python эта программа запускается файлом python.ехе или просто python). Затем программист вводит команды непосредственно в интерпретатор. Недостаток этого метода состоит в том, что программы, набранные таким образом, перестают существовать сразу после прекращения работы интерпретатора. В пакетном режиме программист сначала записывает текст программы в файл (аналогично тому, как это происходит для компилируемых языков), а затем даёт указание интерпретатору выполнить этот файл. Вот пример запуска программы на языке Python в пакетном режиме (как для UNIX, так и для DOS) —

    c:\>python hello.py

  Эта командная строка сообщает операционной системе, что сначала необходимо запустить на выполнение программу python, а после того как Python запустится, в память машины автоматически считывается файл hello.ру и выполняются содержащиеся в нем команды.

  Интерпретатор считывает файл, но вместо того чтобы сразу же преобразовать всю программу в машинный код, он выполняет каждую командную строку файла по мере их прочтения. Удобство, по сравнению с компиляцией, состоит в том, что при обнаружении ошибки интерпретатор сразу же сообщает о ней программисту. Программист может немедленно исправить её и продолжить выполнение программы. Это свойство предоставляет огромное преимущество при отладке программы, так как позволяет исправлять ошибки по мере их обнаружения, не затрачивая время на компиляцию каждой новой версии программы.

  Диалоговый режим очень полезен и весьма эффективен в тех случаях, когда Вы испытываете какой-то новый метод или оригинальный нестандартный приём, с которым Вы только что познакомились, или когда хотите задать интерпретатору несколько простых операций, наблюдение за выполнением которых поможет Вам лучше понять принципы данного языка программирования. Изучая материал первых нескольких глав, мы будем работать в основном в диалоговом режиме, потому что на этом этапе Вам необходимо сосредоточиться на базовых инструкциях языка Python. На практических занятиях Вы будете постигать основные подходы программирования, которые окажутся полезными при разработке ваших собственных проектов. Таким образом, цель наших первых занятий — освоение основ, а не создание прикладных программ, которые имело бы смысл сохранять.

  Прежде чем Вы сможете запустить интерпретатор Python, необходимо получить и установить его, если он ещё не установлен на Вашем компьютере. К примеру, система Red Hat Linux устанавливает Python в процессе инсталляции операционной системы Linux, так что Вы сразу же можете приступать к работе. При использовании дистрибутивов Windows и других версий Linux или UNIX установку Python следует выполнить отдельно (в приложении Г Вы найдёте ссылки на Web-страницы, предоставляющие как саму программу для установки, так и полезную информацию о том, как правильно установить и использовать Python.) Если Ваш поставщик уже инсталлировал Python на Вашем компьютере, удостоверьтесь, что установлен также редактор IDLE. IDLEэто специальная программа текстового редактирования, которую Гуидо ван Россум полностью написал на Python. Мы будем использовать IDLE для редактирования и выполнения примеров программ на протяжении всей книги. Если эта программа у Вас ещё не установлена, опять-таки обратитесь к узлу http://www.python.org/. Обратите внимание, что при инсталляции версии Python для Windows редактор IDLE устанавливается автоматически.

Если Вы устанавливаете версию Python для Windows, я настоятельно рекомендую обратить внимание на одну деталь — укажите инсталляционной программе поместить Python в папку под именем Python в корневом каталоге. В процессе установки инсталлятор по умолчанию предлагает папку C:\Program Files\Python, но я считаю, что лучше выбрать C:\Python. Дело в том, что наличие пробелов в именах каталогов может в дальнейшем привести к трудностям при работе с некоторыми старыми программами, написанными на Python, в которых не предполагалось наличие пробелов в именах каталогов. Впрочем, что касается примеров программ, предложенных в этой книге, то они должны выполняться без проблем и в том случае, если Вы разместите Python в папке, предложенной по умолчанию.

      *Прим. В. Шипкова: как правило, сейчас это указание несущественно. Я уже давно не сталкивался с подобным. Более реальна проблема, из-за разного способа обозначений пути в *nix и Windows. В любом случае - я не ставлю ни одну программу на диск, где стоит Windows. Уж очень капризная система.

  Независимо от того, работаете Вы под управлением операционной системы Windows, Macintosh или UNIX/Linux, необходимо убедиться, установлен ли модуль Tcl/Tk. В случае с Windows все просто — ответьте Yes (Да), когда программа установки спросит, хотите ли Вы установить модуль Tcl/Tk. У пользователей UNIX возникнут определённые проблемы. UNIX вообще предполагает (или даже требует), чтобы его пользователи больше знали о своём компьютере, чем пользователи Windows или Macintosh. Возможно, Вам даже придётся прибегнуть к помощи системного администратора и уговорить его помочь Вам. Ссылки на серверы, с которых можно загрузить Tcl/Tk для UNIX, находятся по адресу http://www.python.org/download/. Вы также можете найти инсталляционные пакеты для Linux в двоичном коде на сервере http://www.andrich.net/python/. Это необходимо сделать, так как для полного усвоения материала этой книги Вам в любом случае понадобится модуль Tcl/Tk. (Работе с этим модулем полностью посвящена заключительная часть книги.)

  Обратите внимание, что для работы с Python 1.5.2 требуется версия Tcl/Tk 8.O. Модуль Tcl/Tk 8.1 не подойдёт, или, по крайней мере, Вам придётся самостоятельно выполнить огромный кусок работы, неподъёмный для новичка. Программа установки Python для Windows наверняка выберет правильную версию модуля, если только Вы зададите установку Tcl/Tk. Но в случае с UNIX Вам, возможно, придётся загрузить, скомпилировать и установить этот пакет самостоятельно. Так как эта тема выходит за рамки данной книги, руководство по установке Вы найдёте на Web-страницах, предложенных разделе "Примеры и задания" в конце главы.

Для пользователей Windows я рекомендую дополнительно загрузить и установить ещё два модуля. Они не понадобятся Вам при работе с данной книгой, но станут хорошим подспорьем для дальнейшей работы по мере того, как Вы будете сталкиваться со всё новыми и новыми задачами программирования в Python. Вот эти модули— Win32Api Extensions и PythonWin. Модуль Win32Api расширяет ваши возможности и позволяет работать с теми же элементами операционных систем семейства Windows, к которым имеют доступ программисты, пишущие на компилируемых языках типа С. Модуль PythonWin предоставляет альтернативный редактор и среду программирования, которые отличаются от использованных в этой книге. Некоторые пользователи предпочитают именно данный редактор, а не IDLE. Это дело вкуса, для целей данной книги IDLE подходит идеально.

      *Прим. В. Шипкова: этот модуль у меня есть. Но, к сожалению, запустить его не удаётся. Впрочем, я не сильно пытался разобраться в причинах такого поведения.

Интерактивность и окружение

  Итак, Python успешно установлен на вашей машине. Но чтобы работа с ним была плодотворной, необходимо приложить ещё немного усилий. Обычно большинство инсталляционных процедур учитывает эти вопросы автоматически. Например, в процессе инсталляции под Windows изменяется содержимое системного реестра, куда добавляются параметры настройки, необходимые для того, чтобы в процессе своей работы программа Python могла найти нужные библиотеки методов и функций. Если Python достался Вам уже предварительно установленным (и настроенным) в операционной системе Linux, информация о размещении необходимых библиотек указана в специальном файле site.py. В обоих случаях Вам не понадобится собственноручно вносить какие-либо изменения.

  В более ранних версиях Python Вам, скорее всего, пришлось бы устанавливать параметры системной переменной PYTHONPATH. Но с появлением Python 1.5.2 необходимость в этом отпала. Правильно установленный Python знает, где искать необходимые модули (с которыми Вы познакомитесь подробнее немного позже), и загрузит их без всяких проблем. Необходимость в установке PYTHONPATH может возникнуть только в особых случаях, например, если Вы хотите загрузить модули, о наличии которых не должны знать остальные сотрудники, работающие на Вашем компьютере. Из всех операционных систем больше всего работы потребуется от пользователей Windows NT. Вам необходимо будет добавить путь к программам Python и Tcl в системные свойства.

      *Прим. В. Шипкова: в версии начиная от 2.2 ничего делать не нужно - проверено на собственной шкурке.

  Это можно выполнить следующим образом: последовательно выберите команды

Start (Пуcк)>Settings

(Настройка)>Control Panel (Панель управления),

а затем дважды щелкните на пиктограмме System (Система). После того как появится окно System, щелкните на вкладке Environment (Среда). Вы увидите страницу свойств, примерный вид которой показан на рис. 2.1 (так это окно выглядит на моём домашнем компьютере).

 

Рис. 2.1. Окно Свойство системы Windows 98

  Обратите внимание, что в колонке Value (Значение) указано местоположение интерпретатора Python и библиотеки Tcl. После того как Вы добавите эти папки в пользовательские настройки вкладки Environment и щелкнете на кнопке Apply (Применить), Ваш Python должен будет выполняться без каких-либо проблем. Чтобы внесенные Вами изменения обрели силу, необходимо закрыть, а затем повторно открыть все выполнявшиеся до этого командные окна программ.

  Если Вы введёте команду python, а в ответ ваша операционная система пожалуется, что во всей вселенной не существует ничего подобного, значит, Вам необходимо изменить свою системную переменную PATH. Сначала проверьте, в той ли папке установлен Python, где Вы предполагали. Если у Вас не хватает знаний или прав доступа, чтобы самостоятельно найти папку, где был установлен Python, обратитесь к своему системному администратору. Установив местонахождение Python на своём компьютере (предположим, это папка С:\Python\), проверьте значение переменной PATH. Вам повезло, если этот путь в списке отсутствует. В таком случае не составит труда его добавить. Если же путь был представлен в переменной PATH, значит, ошибка в чем-то другом и Вам потребуется квалифицированная помощь для выяснения её причины.

  Чтобы установить размещение Python в каталоге систем UNIX/Linux, необходимо ввести в командной строке оболочки что-то вроде PATH=$PATH:/usr/local/bin; export PATH. Или, что даже ещё лучше, добавьте эту строку в конфигурационный файл запуска оболочки. Этот файл может называться .profile, .bashrc или .cshrc, в зависимости от того, какую оболочку Вы используете. В любом случае этот файл должен находиться в корневом каталоге. Откройте этот файл с помощью текстового редактора и добавьте соответствующую информацию о местоположении в строку, где уже установлены другие параметры вашей переменной PATH. Если Вы не вполне понимаете, о чём идёт речь, лучше прибегнуть к помощи специалиста. Но в действительности всё не так уж и сложно. Просто внимательно прочтите установки, которые уже имеются в Вашем файле конфигурации, и их контекст подскажет Вам, что именно необходимо изменить.

  Если местоположение Python описывается, к примеру, такой строкой, как с:\python\python.exe, то Вам необходимо ввести в окне DOS (в строке приглашения на ввод команды) следующую запись: PATH %РАТН%; С:\Python; с:\Python\Tcl; с:\Python\Tcl\bin. Если Вы работаете в Windows 95/98, добавьте упомянутую строку где-нибудь в конце Вашего файла AUTOEXEC.BAT и перезапустите систему. На рис 2.2 изображено внесение изменения в файл AUTOEXEC.BAT с помощью программы Блокнот.

Рис. 2.2. Изменение файла AUTOEXEC.BAT

  Наконец, Вы можете запустить Python, введя python в командной строке Windows или UNIX и нажав <Enter>. Откроется окно, показанное на рис 2.3.

Рис. 2.3. Такое окно должно открыться после ввода команды python

  Символы >>> называются приглашением Python. Приглашение сообщает, что интерпретатор Python готов принять от Вас команду. Если ещё не дрожат руки от волнения, можете посмотреть, что получится, когда Вы начнете вводить команды. Попробуйте ввести "Hello, World" (убедитесь в том, что Вы не забыли ввести и кавычки) и нажмите клавишу <Enter>. На рис. 2.4 представлено ещё несколько примеров, которые стоит попробовать выполнить.

Рис.2.4. Вот так вводятся и выполняются команды в интерпретаторе

  Чтобы выйти из интерпретатора (т.е. завершить работу с ним), в Windows воспользуйтесь комбинацией клавиш <Ctrl+Z>. Для UNIX и при работе с IDLE комбинация другая — <Ctrl+D>. В обоих случаях для ввода этих команд необходимо, удерживая нажатой клавишу <Ctrl>, одновременно нажать клавишу <Z> или <D>. Есть одно общее правило — сначала надо научиться тому, как выйти из любой программы (системы, дома, ситуации и т.д.), прежде чем браться за что-нибудь ещё.

Выполнение сценариев

  Хотя ввод инструкций в интерпретаторе может показаться делом забавным, простым и даже полезным для обучения разным функциям, все это не стоит и ломаного гроша, если Вы не можете сохранять результаты своей работы. В обычном интерпретаторе, который работает в режиме командной строки (в окне DOS на компьютерах типа PC или окне эмулятора терминала на UNIX, и т.д.), нет возможности сохранить плоды ваших трудов. Работа, ограниченная только вводом команд в интерактивном режиме, подобна бросанию денег в море: после этого Вы чувствуете невероятный эмоциональный подъём, но уже никогда не можете вернуть их обратно.

      *Прим. В. Шипкова: я бы сказал, более того - если результат работы нельзя было бы сохранять, то труд программиста потерял бы всякий смысл. К счастью, существует множество способов сохранять данные. %)

  Все же в этой, казалось бы, безвыходной ситуации имеется решение. Можно воспользоваться текстовым редактором и с его помощью набрать текст программы, после чего сохранить его в файле, который должен заканчиваться расширением .ру. (Как уже упоминалось выше, в Windows Вы можете использовать для написания кода приложение "Блокнот" или любой другой текстовый редактор, которому отдаёте предпочтение.) Кстати, Python не требует, чтобы файлы с кодом обязательно заканчивались расширением .ру, но я настоятельно рекомендую поступать именно так, особенно если Вы работаете в Windows. Гарантирую, работа станет значительно легче.

  Независимо от типа платформы, с которой Вы работаете, метод запуска созданных таким образом документов (а чтобы окружающие считали Вас крутым специалистом, смело называйте их сценариями) одинаков. Необходимо всего лишь ввести с клавиатуры в приглашении операционной системы (не важно, какой) следующую команду: python script.ру

В следующем разделе мы и займёмся этим вплотную.

Привет, Python!

  Хотя лично я для написания своих сценариев на языке Python предпочитаю использовать редактор vi, Вам лучше всего использовать тот редактор, в котором Вы чувствуете себя наиболее комфортно. На первоначальном этапе этим требованиям полностью соответствует приложение "Блокнот", которое входит в пакет стандартных программ Windows. Но позже Вы почувствуете, что ему не хватает многих полезных свойств, например автоматической установки отступа, что со временем начнет Вас раздражать.

Новый термин

  Код — это строки читабельных команд, записанные на опредёленном языке программирования.

Раскройте окно своего редактора и введите следующий код:

    print "Hello, World!"

    print "Goodbye, World!"

  (Убедитесь, что эти две строки начинаются с крайней левой позиции Вашего текстового документа. Перед инструкцией print не должно быть ни одного пробела.) Сохраните эти строки в текстовом файле под названием helloworld.py, откройте окно DOS (или другое окно терминала) и сделайте текущим тот каталог, где Вы сохранили файл. Внимание! Теперь Вы готовы запустить свою первую настоящую программу на языке Python.

Новый термин

  Под термином пробел подразумеваются знаки табуляции, пробела и символы перевода каретки и разрыва строки. В Python очень важно не забывать о пробелах, потому что символы пробелов или табуляции, стоящие в начале строки, указывают на структурный уровень данной строки. Все строки программы с опредёленным отступом рассматриваются интерпретатором как единый программный блок. Другие языки для указания программного блока используют специальные символы или ключевые слова. В этом случае отступы, задаваемые пробелами, служат лишь для того, чтобы улучшить читабельность кода. В других языках специальные символы используются ещё для указания конца выражения, что позволяет разбивать выражение на несколько строк. В Python символ разрыва строки указывает одновременно и конец выражения.

Новый термин

  Ключевое слово — это слово, которое зарезервировано в данном языке программирования для выполнения какой-либо функции. Например, print — ключевое слово в Python. Совершенно недопустимо использовать в программах ключевые слова в качестве имён переменных или функций (с переменными и функциями Вы познакомитесь несколько позже).

  Введите в окне терминала строку python helloworld.py и посмотрите, что произойдет. Надеюсь, Вы увидите на своём экране то же, что изображено на рис. 2.5.

Рис. 2.5. Привет, Python!

  Вы только что выполнили свою самую первую программу на языке Python. По традиции обучения любому языку программирования первая программа приветствует мир: "Hello, World". Пока что это и последняя программа на ближайшее время. В следующей главе мы сосредоточимся на усвоении основных математических операторов в Python и воспользуемся для этого возможностью работы с интерпретатором в диалоговом режиме. Но вместо окна терминала мы будем использовать более совершенный программный продукт под названием IDLE.

  IDLE — аббревиатура от Integrated DeveLopment Environment (интегрированная среда разработки). Эта программа были написана создателем Python, Гуидо ван Россумом, причём полностью на языке Python с использованием компонента графического интерфейса пользователя Python под названием tkinter. Мы познакомимся с tkinter более подробно в завершающей трети данной книги, а пока работа с IDLE даст Вам общее представление о разновидностях проектов, которые можно реализовать с помощью tkinter.

  Если Вы уже изменили значение переменной PATH таким образом, что в ней указаны каталоги Python и Tel, самый простой способ обеспечить постоянную доступность IDLE — это создать ярлык к нему на рабочем столе своего ПК. Это очень просто осуществить в Windows и не слишком трудно в Red Hat Linux 6.0, но это достаточно сложно в других версиях UNIX. Я опишу, как создать ярлык в Windows, но пользователям Linux и UNIX я рекомендую обратиться к имеющейся у них документации, чтобы уточнить, как это лучше сделать на их платформе (если это вообще возможно). В противном случае для его запуска необходимо ввести с клавиатуры idle в окне эмулятора терминала.

  Первое, что необходимо сделать, — это найти, где располагается программа IDLE, a для этого Вы должны знать, где находится Python. Но этот вопрос уже должен решаться просто, поскольку каталог, в котором находится Python, должен быть прописан в ваших системных параметрах. На всех моих компьютерах с Windows Python находится в каталоге с:\Python. Если во время установки Python Вы выбрали ту же папку, то откройте её в окне приложения Проводник. В папке Python Вы должны найти несколько вложенных папок, одна из которых называется Tools. Раскройте эту папку. Она должна содержать другую папку под именем idle. Внутри папки idle есть файл idle.py, а сразу за ним должен находиться файл idle.pyw, который и является целью наших поисков. Щелкните правой кнопкой мыши на пиктограмме idle.pyw и из появившегося контекстного меню выберите опцию Создать ярлык. Windows создаст в текущем каталоге новый ярлык под именем Shortcut to idle.pyw (Ярлык для idle.pyw}. Перетащите эту пиктограмму на рабочий стол Windows. При желании можно изменить название ярлыка и даже саму пиктограмму (хотя лично мне нравится этот маленький зеленый питончик, по-моему, он украсит Ваш рабочий стол). Существует альтернативный способ создания ярлыка для быстрого доступа к приложению IDLE. Щелкните в главном меню кнопки Пуск на опции Настройка и выберите в раскрывшемся подменю пункт Панель задач и меню "Пуск"... . В появившемся окне перейдите на вкладку Настройка меню и щелкните на кнопке Дополнительно... . В папке Программы найдите вложенную папку Python 1.5 и выберите её. На правой панели окна Обзор появятся четыре пиктограммы, одна из которых подписана как IDLE (Python GUI). Щелкните правой кнопкой мыши на этой пиктограмме и выберите команду Создать ярлык. Перетащите созданный ярлык на рабочий стол Windows и при желании переименуйте и подберите пиктограмму на свой вкус. После того как Вы будете полностью удовлетворены внешним видом и положением на рабочем столе Windows ярлыка программы IDLE, двойным щелчком мыши запустите эту программу на выполнение. На экране должно появиться главное окно, внешний вид которого показан на рис. 2.6.

      *Прим. В. Шипкова: сейчас в самом ходу версия IDLE 1.1.1 - разумеется, идёт в комплекте с Питоном.

Рис. 2.6. Главное окно программы IDLE

  Из программы IDLE можно выйти тремя способами: выбрать в меню File (Файл) опцию Exit (Выход), или ввести с клавиатуры комбинацию клавиш <Ctrl+D> в поле главного окна, или нажать комбинацию <Ctrl+Q> в любом активном окне IDLE. Попробуйте выйти из программы одним из приведенных способов, затем снова запустите IDLE, чтобы испытать другие методы выхода. Способ, который понравится Вам больше всего, применяйте и в дальнейшем. Теперь Вы готовы продолжить работу и перейти к более сложным вопросам. В следующей главе Вы узнаете, как выполнять в Python основные математические действия, а поможет Вам в этом программа IDLE.

Резюме

  В течение второго часа обучения Вы узнали об основных различиях между компилируемыми и интерпретируемыми языками программирования. Вы научились устанавливать Python и Tcl. Чтобы Python заработал в вашей системе, иногда приходится вручную указать путь к его каталогу в параметрах. После завершения установки Python можно запустить из окна DOS или окна эмулятора терминала. Важно также, что Вы узнали, как завершить работу интерпретатора. Вы узнали, как выполнять простые сценарии, как создать на рабочем столе ярлык приложения IDLE и как запускать эту программу. У Вас также не должно возникнуть проблем с выходом из программы IDLE.

Практикум

Вопросы и ответы

Какие платформы поддерживают IDLE?

  UNIX, Windows и Macintosh, поскольку только эти платформы поддерживают работу tkinter.

      *Прим. В. Шипкова: и Windows тоже, так как пакет Tcl\Tk ставится вместе с Python. А без него IDLE смысла не имеет.

Что делать, если IDLE не запускается?

  В основе этой проблемы может лежать множество причин, поэтому трудно ответить однозначно. Попробуйте обратиться за помощью к тому, кто, по вашему мнению, лучше разбирается в компьютерах. Если помощь окажется малоэффективной, то лучше всего посетить домашнюю страницу Python по адресу http://www.python.org/. Найдите и зарегистрируйтесь в списке рассылки Python Tutor. Этот сервер специально предназначен для оказания помощи новичкам (вроде Вас) в преодолении трудностей программирования на Python.

Могу ли я выполнять программы Python без ввода python script.py?

  Да. В UNIX можно воспользоваться утилитой chmod, которая делает файлы сценариев выполняемыми. Введите chmod +x script.py, и эта команда укажет UNIX (или Linux), что данный файл необходимо обрабатывать таким же способом, как и программы. Кроме того, Вам необходимо будет добавить в программе первую строку, которая должна выглядеть примерно следующим образом:

    #!/usr/bin/env python

  Информацию о правильном синтаксисе этой строки можно найти в разделе документации операционной системы, посвящённом работе с выполняемыми файлами. После этого Вы сможете просто вводить script.py в командной строке. Аналогичный метод существует также и для Windows NT, но в этом случае процедура окажется существенно сложнее. Если поискать соответствующие документы на домашней страничке Python (http://www.python.org/), то можно найти исчерпывающее руководство о том, как правильно её выполнить.

      *Прим. В. Шипкова: подобного рода извращения не потребуются. Так как при установке Python регестрирует расширение файлов .py, .pyw, .pic - "на себя". Значки таких файлов становятся как у приложения python.exe, т. е. питон.

Контрольные вопросы

  1. Что такое IDLE? (IDLE переводится с английского как бесполезный, ленивый, праздный.)

    а) Яблоко, запеченное в тесте (блюдо в южной части Индии).

    б) Интегрированная среда интерпретатора, написанная полностью с помощью Python.

    в) То, во что Вы превращаетесь каждую субботу.

    г) То, чем все время является Ваш кот.

  2. Что происходит, если после ввода команды python в ответ Вы получаете сообщение, в котором говорится, что "The name specified is not recognized as an internal or external command, operable program, or batch file" ("Указанное имя не распознано как внутренняя или внешняя команда, действующая программа или пакетный файл")?

    а) Вы неправильно установили параметры пути.

    б) Кто-то злодейски похитил у Вас Python.

    в) Компьютер просто немного упрямый, попробуйте повторить ввод команды.

    г) Вы работаете под управлением Windows, а Билл Гейтс не любит Python.

  3. Что представляет собой сочетание символов >>>?

    а) Магия Вуду.

    б) Знак "тройная стрелка".

    в) Приглашение Python, которое сообщает, что Python нетерпеливо ожидает ввода ваших команд.

    г) Просто мусор (случайные данные).

  4. Что произойдет, если в интерпретаторе Python ввести команду, которую он не распознает?

    а) Ничего.

    б) Это приведёт к перезагрузке компьютера.

    в) Интерпретатор выведет специальное сообщение об ошибке в виде NameError: <слово, которое Вы ввели>. Если Вы ввели два или больше слов, интерпретатор покажет сообщение SyntaxError:.

    г) Он заставит Вас ввести эту команду правильно 500 раз.

Ответы

  1. б. IDLE — интегрированная среда интерпретатора, написанная полностью на языке Python.
  2. а. Если в приглашении командной строки DOS выводится сообщение о том, что DOS не распознала имя команды, значит, Вы неправильно установили параметры пути.
  3. в. Символы >>> — это приглашение Python. Убедитесь, что отличаете её от приглашения командной строки в окне DOS, которое распознается DOS как компонент имени.
  4. с. Если в интерпретаторе Python ввести команду, которую он не распознает, то на экране появится сообщение об ошибке. Эти сообщения, как правило (но не всегда), довольно информативны. К счастью, Python не перезагрузит Ваш компьютера и даже не завершит свою работу. Однажды я работал на машине, которая требовала периодически запускать специальные диагностические программы, и чтобы войти в этот особый режим диагностики, необходимо было без единой ошибки ввести примерно 15 команд. Причем при их вводе надо было учитывать то, что все диагностические программы имели чрезвычайно придирчивый синтаксис, который включал примерно 30 параметров в командной строке, разделенных запятыми. Если какой-то параметр не использовался, в любом случае надо было ввести запятую, просто чтобы сообщить машине, что данный параметр не используется. Кстати, большинство параметров действительно не использовалось. Если Вы набирали команду и вводили слишком много или слишком мало запятых, диагностический режим прекращался, а машина зависала, вынуждая осуществлять перезагрузку. Как Вы догадываетесь, эта машина не пользовалась особой популярностью.

Примеры и задания

  Поэкспериментируйте с интерпретатором, запуская его в окне DOS, а затем с помощью IDLE. Посмотрите, сможете ли Вы найти отличия в том, как ведет себя каждая из программ.

  Посетите домашнюю страничку Python (http://www.python.org/) и отыщите страницу, содержащую список рассылки. Зарегистрируйтесь в списке рассылки обучающего курса Python. В этом списке можно найти и автора этой книги, а также фамилии многих других людей, сведущих в Python. Мы ведем этот курс именно для того, чтобы отвечать на ваши вопросы и помогать преодолевать трудности в освоении Python. Быть может, когда-нибудь и Вы займете место среди преподавателей этого курса.