NoKnow0722 发表于 2021-1-22 20:40:47

关于while循环的一个小问题

a = "请输入您的操作"
b = ""
    while b != "stop"
      b = input(a)
      print(b)
想请问一下,第二行为什么不能删掉?删掉的话输入stop不会停止,可是就算删掉最后一行把b打印出不是相当于定义了b吗?应该怎么理解呢?谢谢啦~

qiuyouzhi 发表于 2021-1-22 20:45:45

打印了b,不代表改变了b的值。
只有while循环里面的第二行才可以改变b的值。
不然b的值永远都是固定的,如果它不等于stop的话,那么就会死循环。

jackz007 发表于 2021-1-22 20:50:27

b = ""
      这一句有两个作用,第一个作用是定义变量 b,Python 通过赋值来定义变量,一个变量必须先赋值,才能使用,从这个意义上来说,这一句一定不可以删除,如果删除,while b != "stop" 这一句中的 b 就是未定义变量,会出错的。第二个作用是为变量 b 赋了一个很特殊的值,可以保证能够进入后面的 while 循环。

昨非 发表于 2021-1-22 20:51:59

修改b得值是在这一语句       b = input(a)
通过调用input方法从键盘读入你输入的内容
然后以字符串的形式返回并赋值给b
而每层循环中,只做了两件事:
1、读入你输入的内容,赋值给b
2、将你的输入打印出来
再之后,就是while 的条件判断并进入下次循环了

NoKnow0722 发表于 2021-1-22 21:06:46

jackz007 发表于 2021-1-22 20:50
这一句有两个作用,第一个作用是定义变量 b,Python 通过赋值来定义变量,一个变量必须先赋值, ...

明白 谢谢啦
页: [1]
查看完整版本: 关于while循环的一个小问题