python3 迴圈語句的break與else的靈活運用
阿新 • • 發佈:2018-12-15
break 語句和 C 中的類似,用於跳出最近的一級 for 或 while 迴圈。
迴圈可以有一個 else 子句;它在迴圈迭代完整個列表(對於 for )或執行條件為 false (對於 while )時執行,但迴圈被 break 中止的情況下不會執行。以下搜尋素數的示例程式演示了這個子句:
>>> for n in range(2, 10):
... for x in range(2, n):
... if n % x == 0:
... print(n, 'equals', x, '*', n//x)
... break
... else:
... # loop fell through without finding a factor
... print(n, 'is a prime number')
...
2 is a prime number
3 is a prime number
4 equals 2 * 2
5 is a prime number
6 equals 2 * 3
7 is a prime number
8 equals 2 * 4
9 equals 3 * 3
與迴圈一起使用時,else 子句與 try 語句的 else 子句比與 if 語句的具有更多的共同點:
- try 語句的 else 子句在未出現異常時執行。
- 迴圈的 else 子句在未出現 break 時執行。