Другая причина использования цикла while
, которая еще не упоминалась, заключается в том, что вы можете использовать выражения присваивания , поставляемые с Python 3.8.
Функция add
инкапсулирует получениедва числа и пытаюсь их добавить.
def add():
'try to add two numbers from user input, return None on failure'
x = input('number 1: ')
y = input('number 2: ')
try:
return float(x) + float(y)
except TypeError, ValueError:
return None
Следующий цикл while
выполняется, пока нет result
.
while (result := add()) is None:
print('you made a mistake, make sure to input two numbers!')
# use result