2016-11-05 9 views
2

Я смущен о том, как использовать инструкцию «finally»!Использование инструкции finally в python для печати, сколько раз Ive прошел через цикл

Итак, в первый раз через цикл произошла ошибка из-за попытки деления на ноль. Тем не менее, я все еще хочу напечатать пользователю, что цикл выполняется.

Предложение except должно печатать сообщение пользователю, информирующее их о попытке деления на ноль.

Предложение finally должно печатать, сколько раз мы прошли через цикл.

Это то, что я до сих пор

for i in range(10): 
    try: 
     print(7/i) 
    except ValueError: 
     print("Value contents invalid.") 
    finally: 
     Finally message 
+0

Вы почти там, просто добавить оператор печати в вашем заявлении, наконец ... – Li357

+0

Но это говорит, что я должен напечатать, сколько раз, что человек прошел через петлю .. что это значит ?? – Melanie432k

+0

Печать текущей итерации + 1 .... – Li357

ответ

2

Давайте разделим ваш вопрос на части:

Часть 1: печать пользователю, что цикл выполняется. Предложение except должно печатать сообщение пользователю, информирующее их о попытке деления на ноль.

Часть 2: Предложение finally должно печатать, сколько раз мы прошли через цикл.

Ниже приведен ответ. Обратите внимание, что требуется дополнительный отступ. Кроме того, это должен быть ZeroDivisionError, а не ValueError.

for i in range(10):   
    try: 
     print(7/i) 
    except ZeroDivisionError: # part 1 
     print("Division by zero error.") 
    finally: 
     print("We've been through the loop ", i + 1, " times.") # part 2 
+1

Ohhhhhhhhh !!!! Я вижу!!! Я забыл про i lol. Спасибо!! – Melanie432k

+0

Нет проблем. Рад, что я могу помочь, и добро пожаловать в Stackoverflow! – wwl