几周前我开始学习python(之前没有编程知识)并且遇到了我不理解的以下问题。这是代码:
def run():
count = 1
while count<11:
return count
count=count+1
print run()
令我困惑的是为什么打印此功能会导致:1? 不应该打印:10?
我不想列出1到10之间的值(只是为了让自己清楚),所以我不想附加值。我只是想增加我的计数值,直到达到10。
我做错了什么?
谢谢。
答案 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)
返回结束函数提前结束,禁止它进入添加部分。