我的while函数无法使用PYTHON,我不知道怎么了

时间:2018-07-08 22:46:32

标签: python python-3.x while-loop

我已经在下面创建了while循环,但是当它应该打印两次时,它只会打印一次“嘿”,请帮助:

count = 6
item = 3

while count - item > 0:
    print count
    count -= item
    print count
    if count == 0:
        print "hey"

开始时,计数为6,然后为3,但从未变为0

2 个答案:

答案 0 :(得分:0)

什么意思? "hey"应该只打印一次。

我认为您的意思是

count = 6
item = 3

while count > 0:
    count -= item
    print count - item
    if count == 0:
        print "hey"

根据您的情况,它正在检查count-item是否大于0。

答案 1 :(得分:0)

应该吗?

让我们分析代码流。最初countitem设置为:

count = 6; item = 3

,这意味着count - item3,因此我们进入循环。在循环中,我们将count更新为3,所以:

count = 3; item = 3

因此,这意味着您打印count - item,即0,但count本身是3,因此if语句失败,我们执行< em> not 完全打印"hey"

现在while循环检查是否不再存在count - item > 0,因此它停止了。

在这里"hey"两次打印的最小修复方法是:

  1. 将while循环中的检查设置为count - item >= 0;和
  2. 在循环中打印"hey",无论count的值是什么,例如:


count = 6
item = 3

while count - item >= 0:
    count -= item
    print "hey"