Использование
команд if со списками
101
Вывод
достаточно тривиален, поэтому код
сводится к простому циклу
for
:
Adding mushrooms.
Adding green peppers.
Adding extra cheese.
Finished making your pizza!
А если в пиццерии вдруг закончится зеленый перец? Команда
if
в цикле
for
может
правильно обработать эту ситуацию:
requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']
for requested_topping in requested_toppings:
❶
if requested_topping == 'green peppers':
print("Sorry, we are out of green peppers right now.")
❷
else:
print(f"Adding {requested_topping}.")
print("\nFinished making your pizza!")
На этот раз программа проверяет каждый заказанный элемент перед добавлением
его к пицце. В точке
программа проверяет, заказал ли клиент зеленый перец,
и если заказал, выводит сообщение о том, что этого дополнения нет. Блок
else
в точке
гарантирует, что все другие дополнения будут включены в заказ.
Из выходных данных видно, что все заказанные топпинги обрабатываются пра-
вильно:
Adding mushrooms.
Sorry, we are out of green peppers right now.
Adding extra cheese.
Finished making your pizza!
Проверка
наличия элементов в списке
Для всех списков, с которыми мы работали до сих пор, действовало одно простое
предположение: мы считали, что в каждом списке есть хотя бы один элемент. Скоро
мы предоставим пользователю возможность вводить информацию, хранящуюся
в списке, поэтому мы уже не можем предполагать, что при каждом выполнении
цикла в списке есть хотя бы один элемент. В такой ситуации перед выполнением
цикла
for
будет
полезно проверить, есть ли в списке хотя бы один элемент.
Проверим, есть ли элементы в списке заказанных топпингов, перед изготовлением
пиццы. Если список пуст, программа предлагает пользователю подтвердить, что он
хочет базовую пиццу без топпингов. Если список не пуст, пицца готовится так же,
как в предыдущих примерах: