首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >"<=“在Python语言中没有给出预期的结果

"<=“在Python语言中没有给出预期的结果
EN

Stack Overflow用户
提问于 2015-12-10 07:57:52
回答 3查看 56关注 0票数 0

我在自学Python。我已经看过了一些教程,我想我应该写一个小程序来计算光明节8个晚上的每一天的蜡烛数。

代码语言:javascript
运行
复制
days = 0
candles = 1

while days <= 8 :
    days = days + 1
    candles = candles + 1
    print ("Day", days,":", candles, "Candles")

但是这个(Python 3.4)的结果是:

代码语言:javascript
运行
复制
Day 1 : 2 Candles
Day 2 : 3 Candles
Day 3 : 4 Candles
Day 4 : 5 Candles
Day 5 : 6 Candles
Day 6 : 7 Candles
Day 7 : 8 Candles
Day 8 : 9 Candles
Day 9 : 10 Candles

为什么不在第8天停止?

EN

回答 3

Stack Overflow用户

发布于 2015-12-10 08:00:21

因为您在循环开始时使用days <= 8,然后在循环中添加一个。while循环不会在执行完代码块后第二次值发生变化时停止,然后返回到条件并检查它们是否应该继续执行。

票数 1
EN

Stack Overflow用户

发布于 2015-12-10 08:00:08

在测试之后,您将递增变量days的值。当days为8时,将其递增到9,然后打印它。

我会这样做:

代码语言:javascript
运行
复制
days = 1
candles = 2

while days <= 8 :
    print ("Day", days,":", candles, "Candles")
    days = days + 1
    candles = candles + 1
票数 0
EN

Stack Overflow用户

发布于 2015-12-10 08:06:19

如果你在最后增加你的变量,你会得到你想要的。

代码语言:javascript
运行
复制
days = 1
candles = 2

while days <= 8 :

    print ("Day", days,":", candles, "Candles")
    days = days + 1
    candles = candles + 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34191340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档