初学者的小问题
小游戏可以运行 为啥 回答(玩) 就报错?temp =input("你玩lol吗?:")
guess =int(temp)
if guess == 玩:
print("一起玩啊!")
print("大家一起开黑")
else:
print("可惜!")
print("不好玩 不玩啦!")
你玩lol吗?:玩
Traceback (most recent call last):
File "C:/Users/Admin/AppData/Local/Programs/Python/Python310/1.py", line 2, in <module>
guess =int(temp)
ValueError: invalid literal for int() with base 10: '玩'
玩字是字符串呀,不用int的。
temp =input("你玩lol吗?:")
guess =temp
if guess == "玩":
print("一起玩啊!")
print("大家一起开黑")
else:
print("可惜!")
print("不好玩 不玩啦!")
input() 返回值是str型 ,没有办法int() int(s)函数的意思是将s字符串转化为数字,玩不是数字,用int函数转化时会报出无法转化的错误
你的程序还有一个问题就是if guess == 玩:这行中,玩是一个字符串,在python字符串需要用引号包围,但你这里没有,python就会将玩当成变量来识别,就会报出错误:玩这个变量没有被定义,所以需要给玩加上引号
guess=input("你玩lol吗?:")
if guess == "玩":
print("一起玩啊!")
print("大家一起开黑")
else:
print("可惜!")
print("不好玩 不玩啦!") 学会看报错:
guess =int(temp)
ValueError: invalid literal for int() with base 10: '玩'
guess =int(temp) 出的错, 报错信息是: ValueError: invalid literal for int() with base 10: '玩'
也就是 temp 这个值不能 int
你得理解 guess =int(temp) 是干嘛的, 他是猜数字里面的, 需要把输入的字符串类型变成整型, 才能和后面的数字进行比较, 比大小之类的
而字符串之间的关系就不需要这玩意了
页:
[1]