关于phython赋值的问题,大佬进来看看
guess=input("猜猜我想的是什么数字:")temp=int(guess)
while temp!=9:
if temp>9:
print("bigger")
else:
if temp<9:
print("smaller")
guess=input(":")
temp=int(guess)
print('game over')
exit()
以上是我写的代码,划红线的地方是我不理解的地方。当我把他去掉运行时输入数字,会一直出现第一次输入时的答案。
实践出真知,但我想了半天不知道这个赋值到底有什么用。大佬们求解 它啥用都没有,唯一作用就是把字符串转化成整型数值 你输入的值赋给了guess,但是你没有把guess赋值给temp,所以temp一直都是第一次的数啊,你是用temp和9比的,不是guess 本帖最后由 jackz007 于 2020-2-26 14:23 编辑
从键盘直接得到的是 '8',我们需要的是 8,为了从 '8' 中得到 8 就需要用 int(),因为,int('8') = 8
如果不用 int(),那么,即便是键盘输入的是 9,也会因为 '9' 无法等于 9 而永远无法相等,while temp != 9 也会因此而成为死循环。 guess=input("猜猜我想的是什么数字:")#第一次赋值
temp=int(guess) #使赋值等于temp
while temp!=9: #temp与9比较
if temp>9:
print("bigger")
else:
if temp<9:
print("smaller")
guess=input(":") #第二次赋值使得
temp=int(guess) #必须再一次使新的赋值等于temp,不然循环的话还是用的第一次输入的来运行
print('game over')
exit() 从键盘输入的字符都是字符串格式的,这个作用是把它变成整型,同时也作为一个缓冲的区域 input 输出的是字符串需要用 int 转化为整型
页:
[1]