昨天写了两个小程序,想实现一个功能,判断外部输入是否为整数,或者说判断是不是数字,要是输入的其他的返回“您输入的信息有误,请输入数字。”。感觉程序上有点问题就是当输入"数字+空格"时,也会报错,今天整改了一下,把这个功能给加上了,感觉真是很简单,但当时就是没写出来[捂脸],感觉学习的时间还是太短了,下面是我写的改进后的程序。
方法一:
# 方法一: # 判断是否为数字程序 # 要求:输入数字,将结果转换为整数并输出;如果输入的不是数字,将输入为空,提示输入错误; def estimate_int(estimate): # try函数如果没有碰到异常时,返回estimate1的数据。 # try函数如果产生异常,即estimate1 = int(estimate)不成立时,执行except 中的语句 try: estimate1 = int(estimate) return estimate1 except ValueError: print('您输入的信息有误,请输入数字!') # 弄个死循环,让程序一直运行,方便测试 while True: # 使用input()函数进行输入,并赋值给变量 # 使用strip()函数,去除输入内容前后的空格,导致判断错误 age = input("请输入年龄:").strip() age1 = estimate_int(age) print(age1)
方法一:输出结果
方法二:
# 方法二: # 判断是否为数字程序 # 要求:输入数字,将结果转换为整数并输出;如果输入的不是数字,将输入为空,提示输入错误; def estimate_int(estimate): # 判断字符串是否为纯数字,如果为纯数字结果为True,如果不是结果为False。 if e(): # 为纯数字转换为整数 estimate1 = int(estimate) return estimate1 else: print('你输入的内容错误,请输入数字') return # 弄个死循环,让程序一直运行,方便测试 while True: # 使用input()函数进行输入,并赋值给变量 # 使用strip()函数,去除输入内容前后的空格,导致判断错误 age = input("请输入您的年龄").strip() result = estimate_int(age) print(result)
方法二:输出结果
再想想这个程序还需要怎么改进,再给它加点其他的功能,或者再完善这个函数,以后好调用。