Предположим, вы собираетесь ввести в качестве входных данных что-то помимо чисел, поэтому вы получите сообщение об ошибке при вычислении int
. Вы должны использовать блок try/except
следующим образом:
row1=['a ','b ','c ']
row2=[' d',' e','f ']
row3=['g ','h ',' i']
def myfunc():
a=' '
while a not in (list(range(1,10))):
try:
a=int(input('Enter a number between 1 to 9'))
except ValueError:
continue
if a==1:
return row1[0]
elif a==2:
return row1[1]
elif a==3:
return row1[2]
elif a==4:
return row2[0]
elif a==5:
return row2[1]
elif a==6:
return row2[2]
elif a==7:
return row3[0]
elif a==8:
return row3[1]
elif a==9:
return row3[2]
Таким образом, когда пользователь вводит строку, которая не может быть преобразована в int, возникшее исключение не завершает вашу программу.