10-6 加法运算 加法运算 :提示用户提供数值输入时,常出现的一个问题是,用户提供的是文本而不是数字。在这种情况下,当你尝试将输入转换为整数时,将引 发TypeError 异常。编写一个程序,提示用户输入两个数字,再将它们相加并打印结果。在用户输入的任何一个值不是数字时都捕获TypeError 异常,并打印条友好的错误消息。对你编写的程序进行测试:先输入两个数字,再输入一些文本而不是数字。
10-7 加法计算器 加法计算器 :将你为完成练习10-6而编写的代码放在一个while 循环中,让用户犯错(输入的是文本而不是数字)后能够继续输入数字。
##!/usr/bin/python## -*-
coding: UTF-8 -*-
#flag判断标志 number_sum为总和
flag = True
number_sum = 0
while flag == True:
number_a = input('Please Enter a number: ')
number_b = input('Please Enter another number: ')
try:
a = int(number_a)
b = int(number_b)
except ValueError:
print('You have Entered wrong number')
else:
number_sum = a + b
print('The sum of two numbers: ' + str(number_sum))
flag = False
如果输入正确,那么就能获得正确运算。
如果输入错误,那么会重新回到输入,直到输入两个数字为止
一开始总是跳入except之后出不来,因为except里面flag一直是true而a和b一直是那两个非数字的参数,就会导致flag一直是true,也不是数字,一直print(输入数字)。把input放在循环内就可以避免问题.
最后的运行结果: