pyth
为什么只能输入整数,其他就不行?print("_-------工作室---------")
guess=int(input("猜一下:"))
if guess == 8:
print("不错")
print("猜中也没用")
else:
print("baibabi")
print("游戏结束了")
————————————————————————
_-------工作室---------
猜一下:8.1
Traceback (most recent call last):
File "D:/python/lianxi/2.py", line 2, in <module>
guess=int(input("猜一下:"))
ValueError: invalid literal for int() with base 10: '8.1'
>>>
KeyboardInterrupt
>>> int('Pythontab', 10)
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
int('Pythontab', 10)
ValueError: invalid literal for int() with base 10: 'Pythontab' int可以转换字符串为整数(字符串的内容是整数,也就是.isdigit()为True),
也可以转换浮点数(小数)为整数,但不能同时转换。 input 默认返回的是一个字符串
由于字符串不能和整数比较,小甲鱼老师就用 int() 把字符串转换为整数
但是如果用户输入的不是数字,就无法转换成功,所以 python 就报错了。 input函数默认返回字符串形式,如:输入8,input函数接收后是"8",int函数的功能就是将它转化成整数,如:给int函数的参数是"8",int函数会转化为8,但"8.1"是小数,int函数无法转化,所以报错,可以把代码改为:
print("_-------工作室---------")
guess=float(input("猜一下:"))
if guess == 8:
print("不错")
print("猜中也没用")
else:
print("baibabi")
print("游戏结束了")
页:
[1]