while循环在python问题

时间:2013-05-22 23:43:35

标签: python loops while-loop

几周前我开始学习python(之前没有编程知识)并且遇到了我不理解的以下问题。这是代码:

def run():
    count = 1
    while count<11:
        return count
        count=count+1

print run()

令我困惑的是为什么打印此功能会导致:1? 不应该打印:10?

我不想列出1到10之间的值(只是为了让自己清楚),所以我不想附加值。我只是想增加我的计数值,直到达到10。

我做错了什么?

谢谢。

3 个答案:

答案 0 :(得分:5)

你在while循环中做的第一件事是返回当前值count,恰好是1.循环从未实际运行超过第一次迭代。 Python 缩进敏感(以及所有语言,我知道这些语言对订单敏感)。

return循环后移动while

def run():
    count = 1
    while count<11:
        count=count+1
    return count

答案 1 :(得分:1)

更改为:

def run():
    count = 1
    while count<11:
        count=count+1
    return count

print run()

所以你在循环后返回值。

答案 2 :(得分:0)

返回结束函数提前结束,禁止它进入添加部分。