感谢!一个循环里的自增运算,也执行初始的变量赋值?

import random
print("你有5次猜数的机会")
a=random.randint(1, 10)
b=input("请输入:")            #1次
c=int(b)
d=1
while b!=a and d<5:           #4次
      if c>a:
         input("大了,重新输入:")
      else:
         b=int(input ("小了,重新输入:"))
      d=d+1
if (d<=3) and (b==a):
    print("对了")
    
#d=1,1<5,所以继续运行
#d=1+1,2<5,所以继续运行
#d=2+1,3<5,所以继续运行
#d=3+1,4<5,所以继续运行

#所以一个循环里的自增运算,也执行初始的变量赋值?

你条件满足他不就执行了么,刚开始d=1,满足了d<5的条件,你的输出是在d=d+1变量改变之前的,代码的执行逻辑就是这样,不知道你是哪没想明白?

每次的输入b=input("请输入:") 需要放在while里,循环的时候,不要每次都对d进行赋值

import random
print("你有5次猜数的机会")
a=random.randint(1, 10)
d=1

b = input("请输入:")  # 1次
while True:
    c = int(b)
    if c>a:
        b = input("大了,重新输入:")
    elif c<a:
       b=input ("小了,重新输入:")
    elif d>5:
        break
    d = d + 1

if (c==a):
    print("对了")