Академический Документы
Профессиональный Документы
Культура Документы
Условная
инструкция
СОДЕРЖАНИЕ
Логические операторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Каскадная условная инструкция if-elif. . . . . . . . . . . . . . 5
Проектирование простого компьютерного
ассистента . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Условная инструкция
Логические операторы
Вы познакомились со всеми видами условий, ко-
торые есть в языке Python, однако есть еще одна кон-
струкция, которая упрощает процесс написания про-
грамм – это команды and и or.
Перед их рассмотрением давайте поговорим об ус-
ловиях. Условия, которые мы рассматривали ранее,
были простыми. К примеру, если играя в игру, вы наби-
раете достаточное количество очков, то переходите на
следующий уровень. Это простое условие.
Если же для того, чтобы перейти на новый уровень,
вам нужно построить здание, захватить лагерь против-
ника и добыть 150 единиц золотой руды, это будет уже
сложное условие.
Для использования сложных условий существуют
специальные команды – and, or, not. Эти команды ис-
пользуются для объединения нескольких условий:
■■ Команда and (и) – для выполнения действия нужно,
чтобы все условия были правдивыми. Иначе говоря,
оба выражения должны быть true:
a = 5
b = 5
if (a>0) and (b>0):
выражение
...
3
Урок № 5
A B A AND B A OR B NOT A
4
Условная инструкция
Каскадная условная
инструкция if-elif
Условия – важные и часто используемые компо-
ненты любой программы. Однако не всегда можно
оформить условие в виде if-else, поэтому такую кон-
струкцию можно немного улучшить, добавив команду
elif. На рисунке 1 показана схема работы такой кон-
струкции.
Рисунок 1
5
Урок № 5
6
Условная инструкция
Проектирование простого
компьютерного ассистента
Давайте напишем программу – простого личного
ассистента, который бы анализировал дату рождения
человека по различным критериям. С его помощью
можно будет узнать год рождения пользователя, его
возрастную группу и возраст в секундах (рис. 2).
Рисунок 2
Взгляните на код:
import datetime
print("n---------------------------------------")
print("Enter 1 if you want to know about the year
(365 or 366 days).")
7
Урок № 5
8
Условная инструкция
else:
print("It is a leap year (366 days)")
elif number == 2:
print("Your group is ", end="")
if age < 1:
print("Baby")
elif (age >= 1) and (age < 3):
print("Toddler")
elif (age >= 3) and (age < 5):
print("Preschool")
elif (age >= 5) and (age < 12):
print("Gradeschooler")
elif (age >= 12) and (age < 19):
print("Teen")
elif age >= 19:
print("Adult")
elif number == 3:
print("Your age: {} year, {} month,
{} day" .format(age,
abs(month-birth_month),
abs(day-birth_day)))
seconds = ((age * 31536000) + ((month-1) *
2592000) + ((day-1) * 86400))
print("Your age is {} seconds"
.format(seconds))
else:
print("Error! Try again.")
9
Урок № 5
12
Урок № 5
Условная инструкция