Найти тему
J*Satori*K

Python. Статья 4. Инструкции if, while, немного об исключениях. Программа для расчета индекса массы тела.

Всем привет! Рад, что подписываетесь на канал (+4 подписчика за последнюю неделю), Значит то, что я пишу кому-то интересно :). Сегодня хотелось бы немного осветить темы, представленные в заголовке.

Начнем с инструкции if. Как устроен её синтаксис лучше всего показать на примерах:

if high < 10:
print("small")
elif high < 100:
print("medium")
elif .... :
...
else:
print("big")

То есть, начинаем всё с какого-то условия и после " : " пишем, что нужно сделать, если это условия выполнилось. В нашем случае print("small").

Если оно не выполняется, то пишем "elif expression": и дальше новое действие print("medium"). Отмечу, что elif можно использовать множество раз, а может elif и не быть вообще. Завершается все предложением else, которое не является обязательным.

Теперь перейдем к инструкции while и обработке исключений.
Кратко: инструкция
while используется для выполнения своего блока кода ноль или более раз.

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

s = input("введите, сколько Вам полных лет: ")
try:
i = int(s)
print("количество лет равно:", i)
except ValueError as err:
print(err)

То есть, если Вы введете не целое число лет или нажмете на какую-то букву, то программа напишет, что Вы ошиблись :)

Здесь немного отступлю и напомню, что когда мы пишем исходный код, стоит помнить об отступах, которые используются в языке Python для обозначения блочной структуры. Рекомендуется использовать четыре пробела на каждый уровень. Все эти непонятные фразы станут понятны на примерах :)

По поводу while. Опять же, до конца я ещё не разобрался с этой инструкцией, поэтому попробую пояснить на примере:
while True: # рядом с while должно стоять булево выражение
age = input("возраст: ") # input предлагает ввести что-нибудь
if age:
try:
number = int(age)
except ValueError as err:
print(err)
continue
yourpsychologicalage = number - 10
else:
break

Основываясь на полученных знаниях, я попробовал написать программу, которая бы рассчитывала индекс массы тела ("//" - это деление, которое округляет до целого полученный результат).

Она, конечно, не очень, но если вбивать цифры, то всё Вам расскажет. Хотелось бы её подкорректировать, но потом, когда время будет. Здесь я также использовал не целые числа, а вещественные (float)
Она, конечно, не очень, но если вбивать цифры, то всё Вам расскажет. Хотелось бы её подкорректировать, но потом, когда время будет. Здесь я также использовал не целые числа, а вещественные (float)

Спасибо, что дочитали до конца! Обо всём в статье рассказать сложно, нужно самому пробовать, но буду рад любым вопросам!