На этот раз каждый элемент из requested_toppings проверяется по списку доступных топпингов перед добавлением в пиццу:
❶ available_toppings = ['mushrooms', 'olives', 'green peppers',
'pepperoni', 'pineapple', 'extra cheese']
❷ requested_toppings = ['mushrooms', 'french fries', 'extra cheese']
❸ for requested_topping in requested_toppings:
❹ if requested_topping in available_toppings:
print(f"Adding {requested_topping}.")
❺ else:
print(f"Sorry, we don't have {requested_topping}.")
print("\nFinished making your pizza!")
В точке ❶ определяется список доступных топпингов к пицце. Стоит заметить, что если в пиццерии используется постоянный ассортимент топпингов, этот список можно реализовать в виде кортежа. В точке ❷ создается список топпингов, заказанных клиентом. Обратите внимание на необычный заказ 'frenchfries'. В точке ❸ программа перебирает список заказанных топпингов. Внутри цикла программа сначала проверяет, что каждый заказанный топпинг присутствует в списке доступных топпингов ❹. Если топпинг доступен, он добавляется в пиццу. Если заказанный топпинг не входит в список, выполняется блок else❺. Блок else выводит сообщение о том, что топпинг недоступен.
С этим синтаксисом программа выдает четкий, содержательный вывод:
Adding mushrooms.
Sorry, we don't have french fries.
Adding extra cheese.
Finished making your pizza!