Книга «Изучаем Python»



Pdf көрінісі
бет55/238
Дата07.01.2022
өлшемі7,86 Mb.
#18670
түріКнига
1   ...   51   52   53   54   55   56   57   58   ...   238
УПРАЖНЕНИЯ

5-1 . Проверка условий: напишите последовательность условий . Выведите описание каждой 

проверки и ваш прогноз относительно ее результата . Код должен выглядеть примерно так:

car = 'subaru'

print("Is car == 'subaru'? I predict True.")

print(car == 'subaru')

print("\nIs car == 'audi'? I predict False.")

print(car == 'audi')

•  Внимательно  просмотрите  результаты .  Убедитесь  в  том,  что  вы  понимаете,  почему 

результат каждой строки равен True или False .

•  Создайте  как  минимум  10  условий .  Не  менее  5  должны  давать  результат  True, 

а не  менее 5 других — результат False .

5-2 . Больше условий: количество условий не ограничивается 10 . Попробуйте написать дру-

гие условия и включить их в conditional_tests .py . Программа должна выдавать по крайней 

мере один истинный и один ложный результат для следующих видов проверок .

•  Проверка равенства и неравенства строк .

•  Проверки с использованием функции lower() .

•  Числовые проверки равенства и неравенства, условий «больше», «меньше», «больше 

или равно», «меньше или равно» .

•  Проверки с ключевым словом and и or .

•  Проверка вхождения элемента в список .

•  Проверка отсутствия элемента в списке .

Команды if

Когда вы поймете, как работают проверки условий, можно переходить к написанию 

команд 

if

. Существуют несколько разновидностей команд 



if

, и выбор варианта 

зависит от количества проверяемых условий. Примеры команд 

if

 уже встречались 



вам при обсуждении проверки условий, но сейчас эта тема будет рассмотрена более 

подробно.




90    Глава 5  •  Команды if

Простые команды if

Простейшая форма команды 

if

 состоит из одного условия и одного действия:



if условие:

    действие

В первой строке размещается условие, а в блоке с отступом — практически 

 любое действие. Если условие истинно, то Python выполняет код в блоке после 

команды 

if

, а если ложно, этот код игнорируется.



Допустим, имеется переменная, представляющая возраст человека. Следующий 

код проверяет, что этот возраст достаточен для голосования:



voting.py

age = 19


if age >= 18:

    print("You are old enough to vote!")



В точке  Python проверяет, что значение переменной 

age


 больше или равно 18. 

В таком случае выполняется команда 

print

  в строке с отступом:



You are old enough to vote!

Отступы в командах 

if

 играют ту же роль, что и в циклах 



for

. Если условие истин-

но, то все строки с отступом после команды 

if

 выполняются, а если ложно — весь 



блок с отступом игнорируется.

Блок команды 

if

 может содержать сколько угодно строк. Добавим еще одну строку 



для вывода дополнительного сообщения в том случае, если возраст достаточен для 

голосования:

age = 19

if age >= 18:

print("You are old enough to vote!")

    print("Have you registered to vote yet?")

Условие выполняется, а обе команды 

print


 снабжены отступом, поэтому выводятся 

оба сообщения:

You are old enough to vote!

Have you registered to vote yet?

Если значение 

age


 меньше 18, программа ничего не выводит.

Команды if-else

Часто в программе необходимо выполнить одно действие в том случае, если ус-

ловие истинно, и другое действие, если оно ложно. С синтаксисом 

if

-

else



 это 

возможно. Блок 

if

-

else



 в целом похож на команду 

if

, но секция 



else

 определяет 

действие или набор действий, выполняемых при неудачной проверке.



Команды if    91

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

возраст достаточен для голосования, но на этот раз при любом другом возрасте 

выводится другое сообщение:

age = 17

if age >= 18:



print("You are old enough to vote!")

print("Have you registered to vote yet?")

else:


    print("Sorry, you are too young to vote.")

    print("Please register to vote as soon as you turn 18!")

Если условие  истинно, то выполняется первый блок с командами 

print


. Если же 

условие ложно, выполняется блок 

else

 в точке . Так как значение 



age

 на этот раз 

меньше 18, условие оказывается ложным, и выполняется код в блоке 

else


:

Sorry, you are too young to vote.

Please register to vote as soon as you turn 18!

Этот код работает, потому что существуют всего две возможные ситуации: воз-

раст либо достаточен для голосования, либо недостаточен. Структура 

if

-



else

 

хорошо подходит для тех ситуаций, в которых Python всегда выполняет только 



одно из двух возможных действий. В подобных простых цепочках 

if

-



else

 всегда 


выполняется одно из двух возможных действий.

Цепочки if-elif-else

Нередко в программе требуется проверять более двух возможных ситуаций; для 

таких ситуаций в Python предусмотрен синтаксис 

if

-

elif



-

else


. Python выполняет 

только один блок в цепочке 

if

-

elif



-

else


. Все условия проверяются по порядку 

до тех пор, пока одно из них не даст истинный результат. Далее выполняется код, 

следующий за этим условием, а все остальные проверки Python пропускает.

Во многих реальных ситуациях существуют более двух возможных результатов. 

Представьте себе парк аттракционов, который взимает разную плату за вход для 

разных возрастных групп:

‰

Для посетителей младше 4 лет вход бесплатный.



‰

Для посетителей от 4 до 18 лет билет стоит $5.

‰

Для посетителей от 18 лет и старше билет стоит $10.



Как использовать команду 

if

 для определения платы за вход? Следующий код 



определяет, к какой возрастной категории относится посетитель, и выводит со-

общение со стоимостью билета:





Достарыңызбен бөлісу:
1   ...   51   52   53   54   55   56   57   58   ...   238




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет