我是python的初学者,我有两个练习。第一个运行平稳,没问题。但第二个没有运行......为什么?他们之间有什么区别?
首先:
x=0
while x<10:
print 'x is currently:', x
print 'x is still less than 10, adding to x'
x+=1
if x==3:
print 'Hey x equals 3!'
else:
print 'continuing...'
continue
第二个:
x=0
while x<2:
print 'may be!!'
x+=1
if 2<x<10:
print "the number is:", x
else:
print 'not yet!!'
continue
答案 0 :(得分:0)
if 2<x<10:
X永远不会超过2.因为在开始时你将0赋予X.你说;
"while x<2:"
当x大于2或相等时,它从while循环退出。
答案 1 :(得分:0)
我推断你的问题不是打印出the number is: 3
,也不是打印出来的。
问题在于你的循环控制序列:
while x<2: # Exit the loop once x reaches 2
print 'may be!!'
x+=1 # x is no longer the value you tested;
# is that really what you want?
if 2<x<10:
print "the number is:", x
if
语句永远不会是True
;当x
在while
为0或1时,您将其增加到1或2,条件仍为False
。在下一次迭代中,while
条件会强制您退出循环。
continue
是没用的;循环将自然地继续。
答案 2 :(得分:0)
使用值和变量以及循环格式来改善它,通过为自己尝试填充来实现学习。 你的代码设置x = 1,然后打印&#39;可能是&#39;并增加变量,然后跳过if,进入else并打印“还没有”&#39;。 x = 1时,&#39;可能是&#39;再次打印,然后设置x = 2,它再次跳过if,因为条件只接受x大于2不相等。然后打印还没有&#39;在else中,检查循环并将其停止,因为x不小于2,但相等。