首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么while循环不会在变量变为0时停止?(Python)

在Python中,while循环是一种迭代结构,它会根据条件的真假重复执行一段代码块。当条件为真时,代码块会被执行,然后再次检查条件是否为真,如果仍然为真,则继续执行代码块,以此类推。只有当条件为假时,循环才会停止。

在这个特定的问题中,我们假设有一个while循环,其条件是一个变量。当这个变量变为0时,为什么循环不会停止呢?

这是因为在Python中,0被视为False,而非0的值被视为True。当条件表达式的结果为True时,循环会继续执行。因此,即使变量的值变为0,条件仍然为True,循环会继续执行下去。

如果我们希望在变量变为0时停止循环,可以使用其他条件来判断。例如,可以使用一个额外的变量来记录循环次数,当循环次数达到某个特定值时,停止循环。或者可以使用break语句在循环体内部的某个条件满足时提前终止循环。

总结起来,while循环不会在变量变为0时停止,是因为0被视为False,而非0的值被视为True。如果希望在变量变为0时停止循环,可以使用其他条件来判断。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python 为什么不设计 do-while 循环结构?

那么,为什么 Python 不提供这种语法结构呢,这种现状的背后有何种设计考量因素呢?...分析完 do-while 的好处后,让我们回到主题:Python 为什么不需要设计 do-while 循环语法呢?...body> 这不是简单地从其它语言翻译成 Python,它的 while 语句后保留了 Python 的缩进用法,并不会造成直译形式的突兀结果。...expression ":" suite ["else" ":" suite] (PS.在本系列的下一篇文章,我们将解释为什么 Python 要支持 while-else 语法)...最后稍微总结一下,do-while 作为一种常见的循环结构,在其它语言中有所发挥,它甚至还发展出了 do {...} while (0) 的典型用法,但是,do-while 能够解决的几个问题要么在 Python

1.2K10

python入门系列课程 第八课 不停止while循环

前言 本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地方也欢迎指出,在此先行谢过。...while循环为什么已经有了for循环,还需要有个while循环呢? 先来举个例子: 用锤子敲钉子时,你不能只是敲几下,就希望将钉子敲进去。而是要在钉子仍然露在外面时不断地敲它。...while循环格式: 在编程中可以使用while 循环,在条件为真时重复一个命令或者一组命令,为假时不进入循环。 ? 执行流程图: ? 进入循环 当条件一直为真时,就会无限循环,一直执行里面的语句。...下面代码会不停的打印出 不断增加的数字,注意要按下停止键(不然计算机可能会陷入死机状态)。 代码: i=1 while True: print(i) i=i+1 效果: ?...解释: 上面True就是条件,条件是真的,所以就会一直循环,打印出数字。不主动停止程序就不会停下来。 不进入循环 那如果不想让它进入循环该怎么办呢?只需要让条件变为False就可以了。

96510
  • python3--变量,布尔值,用户交互 input,if语句,while循环

    缩进 这里必须要插入这个缩进的知识点 你会发现,上面的if代码里,每个条件的下一行都缩进了4个空格,这是为什么呢?...这里有个问题,就是当我输入95的时候,它打印的结果是A,但是95明明大于第二个条件elif score >=80:这里为什么不打印B呢?...流程控制之--while循环 基本循环 while 条件:     #循环体     #如果条件为真,那么循环体则执行     #如果条件为假,那么循环体不执行 循环终止语句 如果在循环的过程中,因为某些原因...与其它语言else一般只与if搭配不同,在python中还有个while...else语句 while后面的else作用是指,当while循环正常执行完,中间没有被break终止的话,就会执行else后面的语句...print("---out of while loop---") 输出 ? 相关练习 1、使用while循环输入 1 2 3 4 5 6     8 9 10 #!

    1.6K20

    第四章3:while 循环

    Python projects for beginners》是我所见最友好的Python入门书,前段时间我组织并与几位Python爱好者一起对此书翻译为中文,特别感谢参与翻译的这些小伙伴,你们辛苦了。...星期三:while循环 今天我们将讨论另一种循环——while循环。昨天我们看到了循环的工作原理,以及为什么要使用for循环。当你需要根据条件而不是计数循环时,通常使用while循环。...这将会循环打印出变量health的值,直到数值不再满足>0这一条件。在这种情况下,一旦变量health值不再大于零,while循环变会停止运行。...这是因为game_over变量从不变没有变为True,while循环的条件一直符合并不断运行,直到game_over变量变为True。...while循环只有在条件变量game_over为True时,才会停止循环,而输出结果只有0,1,2。 ---- 小提示:使用break语句,防止程序陷入无限循环

    1.5K20

    python笔记(一)

    字符串处理 单双引号一样 .title():将每个单词的首字母变为大写,其余小写(不管原来是什么样) .upper():将字符串中所有字母变为大写 .lower():将字符串中所有字母变为小写 .strip...在末尾添加:.append("aaa") 在任意位置添加:.insert(索引位置,"ccc") 删除:del VAR[索引位置](后边的索引会顶替删除的索引) .remove(值):根据值删除,只删除一次就停止...,如果删除多个同样的值需要用循环判断是否删除干净 弹出列表中最后一个元素:.pop()(弹出的元素可使用,但是不会在列表中存在了) 删除和弹出的区别:删除之后不可使用,弹出能够使用这个弹出的元素 排序:...print("\n" + name.title() + "'s favorite languages are:") for language in languages:(循环中包含循环...,在python2中使用raw_input) 有时候提示是信息超过一行,可以使用变量来存储(\n是换行) VAR_INT=int(VAR_STR)(将字符串类型转换成整型) while循环while

    1.5K30

    【说站】python循环语句的两种类型

    else子句:它在语句条件变为 false 时被执行,但循环被break终止时不执行。...# 语法:     #循环变量:代表着当前可迭代对象中的某个元素 #   for 元素(循环变量) in 序列(可迭代对象): # #      # #   else: # #      2、循环while循环与for循环不同的是,它的停止条件是个人自己设定的。...# 语法: #  while  判断语句 :    #         #  else:       #循环体内必须存在更改条件的语句,否则进入死循环。...# #for循环:通过循环遍历一个可迭代对象来构建循环,可迭代对象遍历完成后,停止循环。 # #whlie循环:只有当条件为假的时候,才会停止循环

    49330

    python基础——条件判断和循环【if,while,for,range】

    前言: 这篇文章主要讲解一下条件判断语句if和循环语句while,for在python中需要注意的地方。...运行结果: 二,while语句 1,基本介绍 在 Python 中,while 语句用于重复执行一段代码。只要指定的条件为 True,就一直循环执行,当条件变为 False 时,循环停止。...要确保在循环体内适当地更新循环控制变量,能够使条件最终变为 False。...但,break只能跳出本层循环 (4)缩进:while循环也使用缩进来控制语句块 三,for语句 1,基本介绍 在 Python 中,for 循环遵守“轮询”机制,对一批内容进行“逐个处理”,通常用来用于遍历序列...我们使用 for 循环遍历这个列表,并打印每个水果。在每次迭代中,变量 fruit 会被赋值为列表中的下一个元素,然后执行循环体,直到列表里的元素被遍历完以后,循环停止

    34910

    Python入门6 while循环

    python中有时要多次重复执行一个操作比如,打印10次Hello world!固然你可以把print('Hello world!')...当条件为True时,while循环内的代码块会不断执行,直到条件变为False为止例如# coding: utf-8while(True): print(1)程序会陷入死循环并且一直打印1这时可以同时按下键盘的...ctrl+c键强行停止程序while语句在执行时,会判断括号里的布尔值是否为真,如果为真则执行后面的代码段,当该段代码运行结束,又回到while,继续判断括号里是否为真,如此循环往复因此只要while括号里的条件一直为真...:把i原本的值加1,然后存在i这个变量中假如i的值现在是1i=i+1的含义等同于i=1+1,因此计算机会把2赋值给i我们再来分析一下这段程序:i=1这句话把i的初始值赋为1while(i<=10):这行判断...10,注意到这时i=2,式子的布尔值仍然是真print(i)打印i的值,打印2i=i+1i变为3………print(i)经过几次循环,假设i这里变为了10,那么打印10i=i+1i变为11while(i<

    10610

    Linux进程——Linux下常见的进程状态

    本篇主要内容: 操作系统中的进程状态 Linux下的进程状态 在开始之前,我们先来简单了解以下进程状态 进程的本质就是PCB中的一个变量!!! 所谓状态变化,本质就是修改整形变量!!!...X死亡状态(dead):这个状态只是一个返回状态,你不会在任务列表里看到这个状态 运行状态 在介绍完这些状态之后,我们来实际操作看看!...因为循环打印时,IO输出是很慢的打印字符会和外设屏幕交互,因此大部分时间进程都处于阻塞状态,但也有极少时间在打印,所以查看进程状态时,我们偶尔可以看见R状态 如果我们将printf删除,单留while,...前台进程和后台进程 刚刚在上面查看进程状态时,是否有过疑问,为什么进程状态后面会有一个加号呢?...二者都是停止状态,对于停止状态用到的不多,我们了解一下即可!

    13510

    Python的控制流

    这个例子恰当地说明了while语句的使用。     把raw_input和if语句移到了while循环内,并且在while循环开始前把running变量设置为True。...首先,我们检验变量running是否为True,然后执行后面的 while-块 。在执行了这块程序之后,再次检验条件,在这个例子中,条件是running变量。...当while循环条件变为False的时候,else块才被执行——这甚至也可能是在条件第一次被检验的时候。...四、break语句     break语句是用来 终止 循环语句的,即哪怕循环条件没有称为False或序列还没有被完全递归,也停止执行循环语句。     ...我们提供了一个特别的条件来停止程序,即检验用户的输入是否是'quit'。通过 终止 循环到达程序结尾来停止程序。     输入字符串的长度通过内建的len函数取得。

    79120

    关于“Python”的核心知识点整理大全14

    接下来,我们创建了一个变量——message(见2),用于存储用户 输入的值。我们将变量message的初始值设置为空字符串"",让Python首次执行while代码行时有 可供检查的东西。...为解决这个问题, 我们必须给变量message指定一个初始值。虽然这个初始值只是一个空字符串,但符合要求,让 Python能够执行while循环所需的比较。...不管用户输入是什么,都 将存储到变量message中并打印出来;接下来,Python重新检查while语句中的条件。...等到用户终于输入'quit' 后,Python停止执行while循环,而整个程序也到此结束: Tell me something, and I will repeat it back to you...如果当前的数字不能被2整除,就执行循环中 余下的代码,Python将这个数字打印出来: 1 3 5 7 9 7.2.6 避免无限循环 每个while循环都必须有停止运行的途径,这样才不会没完没了地执行下去

    12210

    python生成器和迭代器

    那么,python内部是如何知道一个对象是否为可迭代对象呢?答案是,在每一种数据类型对象中,都会有一个__iter__()方法,正是因为这个方法,才使得这些基本数据类型变为可迭代。  ...在for循环内部,首先L会调用__iter__()方法,将列表L变为一个迭代器,然后这个迭代器再调用其__next__()方法,返回取到的第一个值,这个元素就被赋值给了i,接着就打印输出了。 ...你可能会想会 #为什么for循环没有报错?答案很简单,因为for循 #环内部帮我们捕捉到了这个异常,一旦捕捉到异常 #说明,迭代应该结束了!...###########################  下面,我们可以while循环来模拟for循环,输出列表中的元素。  l = [1,2,3,4,5] item = l....:当我们试图用for循环来迭代一个可迭代对象时候,for循环在内部进行了两步操作:第一,将可迭代对象S变为迭代器M;第二,迭代器M调用__next__()方法,并且返回其取出的元素给变量i。

    46230

    Python入门到放弃 | 超简单 跟我学(六)

    ') # 这会导致 while 循环停止 running = False elif guess < number: print('No, it is...这巧妙地阐述了 while 语句的用法。 我们将 input 和 if 语句移动到 while 循环地内部,并在 while 循环之前将变量 running 设置为 True 。...首先,我们检查变量 running 是否为 True ,然后继续执行相应的 while 语句块 。执行完该语句块以后,再检查条件是否成立,在本例中,条件是变量 running 。...else 语句块会在 while 循环的条件变为 False 时执行 —— 甚至有可能在第一次检查条件时,条件就是 False 。...break语句 break 语句是用来 中断 循环语句的,即直接停止循环语句的执行,就算循环条件没有变为 False 或者序列没有迭代到最后一项。

    45110

    零基础学习 Pythonwhile 循环语句

    使用 while 进行循环 whilePython 中最简单的循环机制,翻译成中文是 “当…的时候”,这个条件成立在一段范围或时间间隔内,从而在这段时间间隔内让 Python 做好多事情。...首先是将变量 cnt 的值赋为 1, while 循环比较 cnt 的值和 5 的大小关系,如果 cnt 小于等于 5 的话继续执行。...现在 cnt 变量的值为 2,因此 while 循环内部的代码会被再次执行,cnt 的值会变为 3,在 cnt 从 5 自增到 6 之前一直进行,然后下次判断时, cnt 小于等于 5 的条件不满足,while...循环结束,Python 跳到循环下面的代码。...使用 break 跳出循环 如果你想让循环在某一条件下停止,但是不确定在哪次循环跳出,可以在无限循环中声明 break 语句,其含义就是要在这个地方终端循环,跳出循环体。

    44110

    通过打印斐波纳契数列研究PYTHON连续赋值问题

    为了研究此问题,先打印一下1000以内的斐波那契数列,然后将循环语句中的变量赋值修改一下。...#myproj1.py # Fibonacci series: 斐波纳契数列 # 两个元素的总和确定了下一个数 In [1]: a,b=0,1   In [2]: while b<1000:  ...下面我们研究一下PYTHON连续赋值的问题 在python中是可以使用连续赋值的方式来一次为多个变量进行赋值的 In [9]: a=b=c=1   In [10]: a=0;b=1   In [11]:...1,而b的值变为3,b的值不是1,这是为什么?...因为在连续赋值语句中等式右边其实都是局部变量,而不是真正的变量值本身,上面例子中右边的a,在python解析的时候,只是把变量a的指向的变量3赋给b,而不是a=1之后a的结果。

    31931

    通过打印斐波纳契数列研究PYTHON连续赋值问题

    为了研究此问题,先打印一下1000以内的斐波那契数列,然后将循环语句中的变量赋值修改一下。...#myproj1.py # Fibonacci series: 斐波纳契数列 # 两个元素的总和确定了下一个数 In [1]: a,b=0,1   In [2]: while b<1000:  ...下面我们研究一下PYTHON连续赋值的问题 在python中是可以使用连续赋值的方式来一次为多个变量进行赋值的 In [9]: a=b=c=1   In [10]: a=0;b=1   In [11]:...1,而b的值变为3,b的值不是1,这是为什么?...因为在连续赋值语句中等式右边其实都是局部变量,而不是真正的变量值本身,上面例子中右边的a,在python解析的时候,只是把变量a的指向的变量3赋给b,而不是a=1之后a的结果。

    35421

    巨细靡遗流程控制,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang流程结构详解EP09

    15,随后贯通进入下一个逻辑,x += 20 逻辑,变为35。    ...循环结构之遍历for     for关键字可以用来重复执行某一段代码,在Python中,遍历方式有三种:for 、 while 和 do while 。...我们还可以为遍历添加额外的表达式逻辑,比如初始化控制变量,在整个循环生命周期内,只执行一次;设置循环控制条件,该表达式值为 true 时循环,值为 false 时结束循环;每次循环完都会执行此表达式,可以利用其让控制变量增量或减量...num%2 == 0 { continue } fmt.Println(num) } }     程序返回: 1 3 5 7 9     在 continue 语句后的所有的 for 循环语句都不会在本次循环中执行...我们可以吐槽它没有while或者是do while,亦或者是lambda表达式等可以炫技的资本,但,那又如何呢?

    28420

    python学习笔记(第一章)

    好了进入正题 while循环 bingo = '天钧好帅' name = input("请输入天钧最想听的一句话") while True: if name == bingo:...,脑袋嗡嗡的,不过还好,它的赋值很不一般,像C语言第一条应该是先申请一个变量然后在接收赋值,但Python不一样,直接因为赋值是什么类型就变成什么类型的变量。...什么是while循环 大概是这个样子的[注意消失多年的灵魂画手上线了] ? 这不跟C语言一样的吗,没错就是一样的哈哈哈,指的是原理,别把C语言的格式写进Python代码,下场很惨的。...while结构如下 while 循环条件: 循环体 注意到一个现象没有,它没有大大小小的括号显得代码很干练,那它怎么识别条件语句与循环体的呢,答案是空格,这里的空格是严格要求的,建议同体代码使用...就这样像子弹一样发射出去,大家有没有发现一个有趣的事情,为什么我填的是5最后到4就停止发射了呢,这是因为range是从0开始数的一共5个数,所以到4就停止了。

    54120

    PythonPython中的循环语句

    循环语句除了这三种循环语句外我们还可以通过goto语句来实现循环; 但是在Python中,只存在两种形式的循环语句——while循环语句和for循环语句。...Python中的循环语句与C/C++中所对应的while循环语句与for循环语句有相同点也有不同点,接下来我们就分别来看一下这两种语言中的while语句与for语句之间的差异; 二、while语句 在C...} 在Pythonwhile语句的语法结构与该结构相似,但还是会有些许区别: i = 1 # 循环对象语句 while i !...可迭代对象指的是一种特殊的变量~内部包含了很多其他的值。循环体在执行时,可以通过成员运算符'in'将可迭代对象中的值一个一个的取出来并存放在循环对象变量中。...: 可以看到此时程序已经运行到了i==1622878任然未停止运行,之所以无法停止,正是因为在该循环中判断条件一直成立,且循环体内没有转向语句break来结束循环,因此循环进入了死循环

    10810
    领券