不要手动做数据校验
在日常编码时,很大比例的错误处理工作和用户输入有关。当程序里的某些数据直接来自用户输入时,我们必须先校验这些输入值,再进行之后的处理,否则就会出现难以预料的错误。
举例来说,写一个命令行小程序,它要求用户输入一个0~100范围的数字。假如用户输入的内容无效,就要求其重新输入。要求用户输入数字的脚本(手动校验)。
小程序的代码如代码清单所示:
def input_a_number():
"""要求用户输入一个0~100的数字,如果无效则重新输入"""
while 1:
number = input('Please input a number (0-100): ')
# 下面的三条if语句都是对输入值的校验代码
if not number:
print('Input can not be empty!')
continue
if not number