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

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

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

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

Ваши коллеги будут благодарны вам за это. Однако вы по-прежнему можете встретить конструкцию на основе комбинации ало/ог в программном коде, написанном до появления версии РуФЬоп 2.5 (и в программном коде, написанном программистами, использовавшими язык С, и не сумевшими избавиться от прошлых привычек). В заключение В этой главе мы познакомились с инструкцией тт языка РуФЬоп.

Так как это была первая составная инструкция на нашем пути, мы попутно рассмотрели общие синтаксические правила языка Район и поближе познакомились с операциями проверки истинности. Кроме того, мы также узнали, как в языке РуФЬоп реализуется множественное ветвление, и изучили форму выражений 1Г/е1ве, которая впервые появилась в версии РуФЬоп 2.5. В следующей главе мы продолжим изучение процедурных инструкций и рассмотрим циклы на11е и Гог. Там будет рассказано об альтернативных способах программирования циклов в языке Ру1)топ, каждый из которых имеет свои преимущества. Но перед этим вас ждут обычные контрольные вопросы главы.

Закрепление пройденного Контрольные вопросы 1. Как в языке РуФ)топ можно оформить множественное ветвление т 2. Как в языке РуФЬоп можно оформить инструкцию 1Г/е1ве в виде выражения т 3. Как можно разместить одну инструкцию в нескольких строках т 329 Закрепление пройденного 4. Что означают слова Тгсе и га1ае7 Ответы 1. Самый простой, хотя и не самый краткий способ организации множественного ветвления заключается в использовании инструкции 1г с несколькими частями е1(г. Нередко того же результата можно добиться с помощью операции индексации в словаре, особенно если учесть, что словари могут содержать функции, созданные с помощью инструкций Ое( или выражений 1ааоса. 2. В версии Ру(Ьоп 2.5 выражение У 1г Х е1ае Е возвращает У, если Х имеет истинное значение, или 2 — в противном случае.

Это выражение эквивалентно инструкции 1( из четырех строк. Комбинация операторов апО/ог ((Х апо 'г') ог 2) может действовать точно так же, но она менее понятна и требует, чтобы часть г' имела истинное значение. 3. Обернув инструкцию синтаксически уместной парой скобок ((), [], или ()), можно расположить ее на нескольких строках — инструкция будет считаться законченной, когда интерпретатор обнаружит правую закрывающую скобку. 4.

Тгсе и га1ае — это всего лишь версии целых чисел 1 и О, соответственно. В языке Ру(поп они обозначают истинные и ложные значения. Циклы ~мЫ!е и аког В этой главе мы встретимся с двумя основными конструкциями организации циклов в языке РуФЬоп — инструкциями, которые выполняют одну и ту же последовательность действий снова и снова.

Первая из них, инструкция хЭ11е, обеспечивает способ организации универсальных циклов; вторая, инструкция го~, предназначена для обхода элементов в последовательностях и выполнения блока программного кода для каждого из них. В языке Ру111оп существуют и другие способы организации циклов, но две инструкции, которые описываются здесь, являются основными синтаксическими элементами, предоставляющими возможность программирования повторяющихся действий.

Кроме того, мы попутно рассмотрим необычные инструкции (такие как Сгеэх и сспмсэе), потому что они используются внутри циклов. Дополнительно в этой главе мы исследуем родственные концепции протокола итераций в языке РуФЬоп и рассмотрим некоторые подробности о генераторах списков— близких родственниках цикла гог. Циклы а~Ы!е Инструкция ээ11е является самой универсальной конструкцией организации итераций в языке РуФоп. Проще говоря, она продолжает выполнять блок инструкций (обычно с отступами) до тех пор, пока условное выражение продолжает возвращать истину.

Она называется «цикломе, потому что управление циклически возвращается к началу инструкции, пока условное выражение не вернет ложное значение. Как только в результате проверки будет получено ложное значение, управление будет передано первой инструкции, расположенной сразу же за вложенным блоком тела цикла чЭ11е. В результате тело цикла продолжает выполняться снова и снова, пока условное выражение возвраща- ЗЗ1 Циклы иЬ!е ет истинное выражение, а если условное выражение сразу вернет лож- ное значение, тело цикла никогда не будет выполнено. Общий формат В своей наиболее сложной форме инструкция ил11е состоит из строки заголовка с условным выражением, тела цикла, содержащего одну или более инструкций с отступами, и необязательной части е1ве, которая выполняется, когда управление передается за пределы цикла без использования инструкции Сгеаа.

Интерпретатор продолжает вычислять условное выражение в строке заголовка и выполнять вложенные инструкции в теле цикла, пока условное выражение не вернет ложное значение: ип>1е <тевт>; <втатеаептв<> е1ве; <ыатваепш2> а условное выракение гевг а Тело цикла В Иеобязателвная насты е1ве а Выполняется, если вы<од из цикла производится а не инструкцией Огеая Примеры Для иллюстрации рассмотрим несколько простых циклов ил11е в действии. Первый, который содержит инструкцию рг1пв, вложенную в цикл иП11е, просто выводит сообщение до бесконечности.

Не забывайте, что Тгце — это всего лишь особая версия целого числа 1, и оно обозначает истинное значение, поэтому результатом этого условного выражения всегда будет истина и интерпретатор бесконечно будет выполнять тело цикла, пока вы не прервете его выполнение. Ч'акие циклы обычно называются бесконечными: »> иа11е Тгце; рггж 'Туре С<г1-С Во егор ве! ' Следующий фрагмент продолжает вырезать из строки первый символ, пока она не опустеет и в результате не превратится в ложное значение.

Это обычная практика — проверка истинности объектов осуществляется непосредственно вместо использования более растянутого эквивалента (ил11е к ! = ' ';). Далее в этой главе мы рассмотрим другие способы обхода элементов строки с помощью цикла Тот. Обратите внимание на завершающий символ запятой в инструкции рг(пв — как рассказывалось в главе 11, такой прием обеспечивает вывод значений в одну строку: Как я только что заметил, инструкция илв1е — это одна из двух инструкций циклов в языке РуФЬоп, кроме нее существует еще инструкция Тот.

Помимо этих инструкций в языке Ру$Ьоп существует несколько способов неявной организации циклов (итераций): функции вар, гебцсе и Тт1гег; оператор 1п проверки на вхождение; генераторы списков и многие другие. Некоторые из них мы рассмотрим в главе 17, потому что они имеют отношение к функциям. зз2 Глава13. ЦиклычцЬ))еи1ог »> х = 'зраа' »> вп11е х: рггп1 х, х х(1:) № Пока х не пустая строка № Вврезат» первей символ из к зрав раа аа и Следующий фрагмент перебирает значения от а до Ь, не включая зна- чение Ь.

Ниже мы рассмотрим более простой способ выполнения этих же действий с помощью цикла (о г и встроенной функции гапОО: »> а=с; Ь=10 »> ип11е а < Ь: рг1п1 а, а+=1 № Один из способов организации циклов перечисления №Ог, а=а»1 О 123486789 Наконец, обратите внимание, что в языке Ру1Ьоп отсутствует цикл «до ип111», имеющийся в других языках программирования. Однако его можно имитировать, добавив в конец тела цикла условную инст- рукцию и инструкцию Ьгеауи нл>1е Тгце: ...тело цикла... тт ехтттезт( ): Ьгеак ЬгеаК сопбпое, ран и е!ье Теперь, когда мы познакомились с несколькими циклами в действии, настало время обратить внимание на две простые инструкции, которые могут использоваться только внутри циклов — инструкции ЬгеаК и соп1(псе.

Раз уж мы занялись изучением необычных инструкций, заодно рассмотрим здесь часть е1зе, потому что она некоторым образом связана с инструкцией Ьгеаа, и заодно пустую инструкцию-заполнитель раза. Ьгеах Производит переход за пределы объемлющего цикла (всей инструк- ции цикла). соп11пце Производит переход в начало цикла (в строку заголовка). раза Ничего не делает: это пустая инструкция, используемая как заполнитель. Чтобы окончательно понять, как эта структура работает, нам необходимо перейти к следующему разделу и поближе познакомиться с инстРукцией Ь геаК. ЬгеаК, соп1!псе, раж и ейе Блок е1ае Выполняется, только если цикл завершился обычным образом (без использования инструкции ЬгеаК). ип>1е <тазы>: <згатааептз1> >т <1езт2> Ьгеац >Г <1езте>, сопыпце е1зе: <зсатеаеыз2> № Войти из цикла, пропустил часть а1за № лерайти а на~ало цикла, к аиракенио геагч № Вилолняатся, если не была испол»золяна № инструкция 'Огеая' Инструкции ЬгеаК и сопшпце могут появляться в любом месте внутри тела цикла ио11е (или тот), но как правило, они используются в услов- ных инструкциях 1(, чтобы выполнить необходимое действие в ответ на некоторое условие.

Примеры Обратимся к нескольким простым примерам, чтобы увидеть, как эти инструкции используются на практике. р3$5 Инструкция раза не выполняет никаких действий и используется в случаях, когда синтаксис языка требует наличия инструкции, но никаких полезных действий в этой точке программы выполнить нельзя. Она часто используется в качестве пустого тела составной инструкции. Например, если потребуется создать бесконечный цикл, который ничего не делает, сделать это можно будет следующим образом: № Вааяята СГГ1-С, ЧтОбц ЛрараатЬ ЦИКЛ! иот1е 1: раза Поскольку тело цикла — это всего лишь пустая инструкция, интерпретатор «застрянет» в этом цикле. Грубо говоря, раза в мире инструкций— это то же, что йопе в мире объектов — явное ничто.

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

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

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

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