On Tue, Feb 7, 2012 at 7:50 PM, Debashish Saha <silid...@gmail.com> wrote: > for i in range(1, 8): > print(i) > if i==3: > break > else: > print('The for loop is over') > > > Output: > 1 > 2 > 3 > > Question:but after breaking the for loop why the else command could not work? >
because the else statement was designed to be that way: http://docs.python.org/reference/compound_stmts.html#for quoting the relevant part: "When the items are exhausted (which is immediately when the sequence is empty), the suite in the else clause, if present, is executed, and the loop terminates. A break statement executed in the first suite terminates the loop without executing the else clause’s suite." in short, the else clause only executes if you do *not* break out of the loop. HTH, Hugo _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor