24 while和 全局变量 指向问题,很简单 求解答

import random as random
ran = random.randint(0,100);
print(ran);
n = 1;
guess= int(input('猜这个数字'));

while guess != ran:
    n+=1;
    if guess> ran:
        print('比这个数字大');
        guess = int(input('第%i次猜这个数字' %n));
    elif guess < ran:
        print('比这个数字小');
        guess = int(input('第%i次猜这个数字' %n));
else:
      print('找到你了');
      

问题描述:
删了 全局n就,while不循环了, guess 外边的和里面的  地址值就不一样了,但是为什么  写入这个 n  然后就完美执行了呢?




请先 登录 后评论

最佳答案 2021-09-23 23:04

  1. a, b = 0, 1

  2. while b < 10:
  3.     print(b)
  4.     a, b = b, a+b # 這裡的 b = a+b 就是原本的 a 加上 b

  5. print()

  6. a, b = 0, 1
  7. while b < 10:
  8.     print(b)
  9.     a=b # a 已經變成 b 的值
  10.     b=a+b # a+b 就變成 b+b 同意思
复制代码
请先 登录 后评论

其它 1 个回答

吃货玲洋
n+=1 # 等于 n = n + 1
如果删掉 n=1
请问 n = n + 1怎么执行
请先 登录 后评论
  • 2 关注
  • 0 收藏,366 浏览
  • 安诺斯诺 提出于 2021-09-23 23:04

相似问题