编写代码,需要站在用户的角度上思考问题,用户不一定只输入我们提示的数字,他们可能还会输入小数、字母、中文和不在范围内的数字,这些输入可能就会导致系统报错。
答案一
这段代码是由缺陷的,因为它没有限制输入为字母的情况
import random
print("请输入:剪刀(0)、石头(1)、布(2),三种中的任意一个数字!!!")
a=float(input("请输入数字:"))
if a >= 0 and a <= 2:
print("您的输入为:", a)
b = random.randint(0, 2)
print("随机生成数字为:", b)
if a == b:
print("平局")
elif a > b:
print("恭喜您,您赢了!!!")
else:
print("哈哈哈,您输了!!!")
else:
print("请输入正确的值!!!")
输出结果
- 输入范围内的值
- 输入小数
- 输入字母
答案二
这段代码就限制了小数、字母和不在范围内的数字
import random
print("请输入:剪刀(0)、石头(1)、布(2),三种中的任意一个数字!!!")
a=input("请输入数字:")
if a.isnumeric():
c=int(a)
if c >= 0 and c <= 2:
print("您的输入为:", c)
b = random.randint(0, 2)
print("随机生成数字为:", b)
if c == b:
print("平局")
elif c > b:
print("恭喜您,您赢了!!!")
else:
print("哈哈哈,您输了!!!")
else:
print("请输入范围内的整数!!!")
else:
print("不要输入包含字母或小数的字符串,请输入范围内的整数!!!")
输出结果
- 输入范围内的值
- 输入小数
- 输入字母或文字
这是我在学习python的过程中写的代码(练习题),可能代码还有遗漏的地方,欢迎大家指出来,共同进步!!!