我是一个使用Python的初学者,很少尝试程序。我在Python中有如下WHILE循环构造(不确切)。
IDLE 2.6.4
>>> a=0
>>> b=0
>>> while a < 4:
a=a+1
while b < 4:
b=b+1
print a, b
1 1
1 2
1 3
1 4
我期望外环循环通过1,2,3和4。我知道我可以这样做
>>> for a in range(1,5):
for b in range(1,5):
print a,b
1 1
1 2
.. ..
.. .. // Other lines omitted for brevity
4 4
但是,WHILE循环有什么问题?我想我漏掉了一些显而易见的东西,但是我看不出来。
回答: 修正的WHILE循环。。
>>> a=0
>>> b=0
>>> while a < 4:
a=a+1
b=0
while b<4:
b=b+1
print a,b
1 1
.. ..
.. .. // Other lines omitted for brevity
4 4
p.S:搜索结果是,找到了few questions,但没有一个接近这个。不知道这是否可以归类为作业,实际程序不同,问题是什么让我困惑。
您不会在外部循环的右边将
b
重置为0,因此b
保持在外部循环的第一段(4)之后的值,并且内部循环永远不会再次执行。for
循环工作良好,因为它们确实正确地重置了它们的循环控制变量;对于结构较少的while
循环,这样的重置就在您的手中,而您却没有这样做。相关问题 更多 >
编程相关推荐