Главная » Просмотр файлов » Лутц М. - Изучаем Python

Лутц М. - Изучаем Python (1077325), страница 17

Файл №1077325 Лутц М. - Изучаем Python (Лутц М. - Изучаем Python) 17 страницаЛутц М. - Изучаем Python (1077325) страница 172018-01-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 17)

Итак, вы создали полноценный сценарий на языке Ру1Ьоп. Сохранив этот текстовый файл, вы сможете предложить интерпретатору Ру(Ьоп выполнить его, указав полное имя файла в качестве первого аргумента команды ругвоп, введя следующую строку в системной командной строке: % ау!поп араа.ру 258 гпе ог18пг зтое ог пте И в этом случае также вы должны использовать командную оболочку, которая предоставляется вашей операционной системой, — в окне Командная строка (Согпгпапд Ргогпр() в у(Г)пс)очгв, в х)етт или в подобных им программах.

Не забывайте заменять слово вру1Ьоп» на полный путь к исполняемому файлу интерпретатора, если переменная окружения РАТП у вас не настроена. Вывод этого сценария можно наблюдать ниже строки, где была введена команда, — это результат работы двух инструкций рг1п1, находящихся в текстовом файле. Обратите внимание, что файл модуля называется врат.ру.

Как и любой другой файл верхнего уровня, он мог бы также называться просто врат, однако файлы, которые должны импортироваться клиентом, обязаны иметь расширение .ру. Вопросы импорта мы будем обсуждать ниже, в этой же главе. Позднее вам может потребоваться импортировать тот или иной файл, поэтому всегда желательно использовать расширение .ру в именах файлов с программным кодом на языке РусЬоп. Кроме того, некоторые текстовые редакторы определяют принадлежность файлов по расширению .ру — если расширение отсутствует, вы можете лишиться таких функциональных возможностей редактора, как подсветка синтаксиса и автоматическое оформление отступов.

Поскольку в данной ситуации для запуска программ на языке РуФЬоп используется командная оболочка, можно применять любые синтаксические конструкции, допускаемые командной оболочкой. Например, можно перенаправить вывод сценария РусЬоп в файл, чтобы детально исследовать полученные результаты позднее, как показано ниже: 79 Системная командная строка и файлы % рутпоп зраэ.ру > ззузгт.ткт В этом случае две строки, которые были показаны в предыдущем примере запуска сценария, не будут выводиться на экран, а будут записаны в файл зарей.тхт. Это широко известная возможность перенаправления полтонов — она может использоваться как для вывода текста, так и для ввода.

Она присутствует в ТАР1пс)очгв и в Т)М1Х-подобных системах. Она мало связана с Ру1)топ (интерпретатор РуФ)топ просто поддерживает ее), поэтому здесь мы не будем углубляться в подробности работы механизма перенаправления. Если вы пользуетесь операционной системой 'Иапо)отоз, этот пример также будет работать, хотя сама командная строка будет выглядеть несколько иначе: 0.'тРутпоп25> рутпоп эрза,ру 256 тье Ьгтды Юсе от 1>те Если у вас переменная окружения РАТН не настроена и не был выполнен переход в каталог интерпретатора, вам необходимо вводить полный путь к исполняемому файлу интерпретатора РуЫтоп: О.'ттЕОР> 0.'1РУтЬОП251РУтпро ЗРЗВ.РУ 256 тпе ьг1дпт мое ог 11те В новейших версиях )АР)пдотув вы можете просто вводить имя файла сценария независимо от того, в каком каталоге вы находитесь, потому что новейшие версии системы ЪПпс)оигв отыскивают программы, необходимые для запуска файлов, с помощью реестра ттЧпс)ооув и вам не требуется явно указывать ее в командной строке.

Например, в современных версиях тйт1пс)ооуа предыдущую команду можно упростить до: 0 1теор> ораз.ру Наконец, не нужно забывать указывать полный путь к файлу сценария, если он находится в каталоге, отличном от того, в котором вы работаете. Например, следующая команда будет работать в каталоге Э:'1оггтег, в предположении, что путь к команде рутлоп включен в переменную окружения РАТН, но она должна запустить сценарий, расположенный в некотором другом каталоге: 0 тотпег> рутооп о:'тооезтэузог1рт.ру Использование системной командной строки и файлов Запуск файлов программ из командной строки системы является достаточно простой задачей, особенно если вы и раньше работали с командной строкой.

Ч'ем не менее ниже описываются несколько ловушек, в которые часто попадают начинающие: ° Остерегайтесь автоматического присвоения расширения файлам в операционной системе %г)пбоигэ. Если для создания файлов про- Глава 3. Как пользователь запускает программы грамм в 1з71пдотув вы пользуетесь редактором Блокнот (йо1ераб), перед сохранением выбирайте тип файла Все файлы (Ай Ейез) и явно указывайте расширение .ру.

В противном случае Блокнот (йо1ерад) будет присваивать файлам расширение.тхт (например, вралт.руххт), что в некоторых ситуациях осложнит запуск таких файлов. Хуже того, по умолчанию операционная система 'Иг)пдотув скрывает расширения файлов, поэтому если вы забыли указать тип файла, вы можете даже не заметить, что создали обычный текстовый файл, а не файл, который должен запускаться интерпретатором Русйоп. Здесь вам может помочь ярлык файла — если на нем отсутствует изображение головы змеи, у вас могут появиться некоторые проблемы с запуском.

Отсутствие подсветки синтаксиса в 1ПЕЕ и открытие файла в редакторе вместо его запуска в результате щелчка мышью могут служить еще одним признаком этой проблемы. Текстовый процессор М1сговой ЪЧогс( похожим образом по умолчанию добавляет расширение .с(ос. Мало этого, он добавляет в файл символы форматирования, которые являются недопустимыми с точки зрения синтаксиса Рус)топ. Поэтому возьмите за правило всегда выбирать тип файла Все файлы (Ай Н!ез) при сохранении в операционной системе УК1пс(отта или используйте более удобные для программистов текстовые редакторы, такие как П)) Е.

Ю) Е не добавляет расширение к имени файла автоматически, даже расширение .ру — эта особенность нравится программистам, но не пользователям. ° Указывайте расширение в командной строке, но не в инструкциях импорта. Не забывайте указывать полное имя файла в командной строке, то есть используйте, например, команду ру1лоп врзв. ру, а не рутлоп зрзв.

Инструкция тврог1, с которой мы познакомимся ниже, в этой же главе, требует, чтобы путь к файлу и его расширение были опущены (например,!арог1 зрав). Это несложно, но данная особенность часто является источником ошибок. Интерпретацией команды в командной строке занимается система, а не интерпретатор Рус)топ, поэтому в ней неприменимы правила поиска файлов, которые использует Ру(Ьоп. Поэтому в командной строке необходимо всегда указывать расширение файла .ру и при необходимости — путь к файлу, который требуется запустить.

Например, чтобы запустить файл, находящийся в каталоге, отличном от того, в котором вы работаете, обычно необходимо указать полный путь к файлу (например, с;'1рутпоп25>рутпоп з '11ев1в1врзв. ру). Однако в программном коде на языке РусЬоп вам достаточно просто указать инструкцию шрог1 враз и дОвЕрить интерпретатору самОму отыскать требуемый файл в пути поиска модулей, как будет описано ниже. ° Используйте в файлах инструкции рг1п1.

Да, мы уже говорили об этом, но это настолько распространенная ошибка, что она вполне заслуживает, чтобы еще раз напомнить о ней. В отличие от интерактивного режима, чтобы вывести результаты работы файлов программ на экран, вы должны использовать инструкции ргтпт. В1 Системная командная строка и файлы Исполняемые сценарии в 0й!Х (Ф1) Если вы используете Ру$Ьоп в 1)1«Т1Х, ?лппх или в другой ПЬТ1Х-подобной операционной системе, вы можете превратить файлы с программным кодом на языке Ру$Ьоп в исполняемые программы, точно так же, как программы на таких языках командной оболочки, как Ьей или саЬ. Такие файлы обычно называются исполняемыми сценариями. Проще говоря, исполняемые сценарии в П1ч1Х-подобных системах— это обычные текстовые файлы, содержащие инструкции на языке Ру$Ьоп, но обладающие двумя необходимыми свойствами: ° Первая строка имеет специальный формат.

Первая строка в сценариях, как правило, начинается с символов а! (эта комбинация часто называется как «ЬазЬ Ьапя«), за которыми следует путь к интерпретатору РуФЬоп. ° Как правило для них установлено право на выполнение. Обычно файлы сценариев помечаются как исполняемые файлы, чтобы сообщить системе, что они могут быть запущены как программы верхнего уровня. В П)«11Х-подобных системах зто обычно делается с помощью такой команды, как савой «х ТТ1е ру. Давайте рассмотрим пример для ТЛ«11Х-подобных систем.

Сначала с помощью текстового редактора создайте файл модуля РуФЬоп с именем Ьг(ап: Е' /пегт1оса1/Ьтп/рутяоп рыпт 'Тяе Вг1ды 31ее от ыте... ' Ф Это еее один коииентарий Первая строка в файле сообщает системе, где находится интерпретатор РуФЬоп. С технической точки зрения для интерпретатора Ру1Ьоп первая строка является комментарием. Как уже говорилось ранее, все, что начинается с символа а и до конца строки, является комментарием— в них размещается дополнительная информация, предназначенная для человека, который будет читать ваш программный код. Но когда в файле присутствует комментарий, такой как в первой строке, он приобретает особый смысл, потому что система использует его для поиска интерпретатора, который будет выполнять остальной программный код в файле. Кроме того, обратите внимание, что этот файл называется просто Ьт(оп, в его имени отсутствует расширение .ру, которое мы использовали ранее для обозначения модулей.

Наличие расширения .ру не повредило бы (и даже лишний раз напоминало бы, что это файл программы на языке Ру$Ьоп), но так как этот файл не планируется импортировать из других модулей, такое имя файла является вполне допустимым. Если дать этому файлу право на выполнение с помощью команды резой +х Ьг тая, вы сможете запускать его из командной строки системы, как если бы это была самая обычная программа: % Ьг1ап Тяе Вгтдш атее от Ыте,.. Глава 3.

Как пользователь запускает программы Для пользователей опт(стив замечу, что метод, описываемый здесь, характерен для Т)Ь)1Х и может быть неприменим на вашей платформе. Однако вам незачем волноваться, просто используйте метод запуска, который описывался выше. Укажите имя выполняемого файла, как первый аргумент команды рутпоп.' с:'тьоокттеэтэ> рутьоп ьг1ал Тле Вг1олт 51ое от С1те... В этом случае не требуется добавлять специальный комментарий д! вначало файла (хотя, если он присутствует, Ру()топ просто игнорирует его), и файл не должен иметь право на выполнение.

Фактически, если вы Трюк с использованием команды епч в (л((1Х В некоторых версиях системы УХ1Х можно избежать явного указания пути к интерпретатору Ру1)топ, если специальный комментарий в первой строке оформить следующим образом: М /цзг/Ьтп/ели рутлоя ...здесь находится ярограиинид крд сценария... При таком подходе программа ели отыщет интерпретатор Ру- 1)топ в соответствии с настройками пути поиска (то есть в большинстве командных оболочек ШЧ1Х поиск будет произведен во всех каталогах, перечисленных в переменной окружения РАТН). Такой способ может оказаться более универсальным, так как он не требует жестко указывать во всех сценариях путь к каталогу, куда был установлен Ру()топ. Если у вас имеется доступ к программе епи из любого места, ваши сценарии будут запускаться независимо от того, где находится интерпретатор РуФ)топ, — вам достаточно будет лишь настроить переменную окружения РАТН в своих системах, не внося исправления в первую строку всех сценариев.

Характеристики

Тип файла
DJVU-файл
Размер
11,21 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6280
Авторов
на СтудИзбе
315
Средний доход
с одного платного файла
Обучение Подробнее