自學Python入門 (for和while)循環嵌套及用法

Python 程序中,若是把一個循環放在另外一個循環體內,那麼就能夠造成循環嵌套。循環嵌套既能夠是 for 循環嵌套 while 循環,也能夠是 while 循環嵌套 for 循環,即各類類型的循環均可以做爲外層循環,各類類型的循環也均可以做爲內層循環。ide

當程序遇到循環嵌套時,若是外層循環的循環條件容許,則開始執行外層循環的循環體,而內層循環將被外層循環的循環體來執行(只是內層循環須要反覆執行本身的循環體而己)。只有當內層循環執行結束且外層循環的循環體也執行結束時,纔會經過判斷外層循環的循環條件,決定是否再次開始執行外層循環的循環體。code

根據上面分析,假設外層循環的循環次數爲 n 次,內層循環的循環次數爲 m 次,那麼內層循環的循環體實際上須要執行 n × m 次。循環嵌套的執行流程圖如圖 1 所示:
循環嵌套的執行流程圖
從圖 1 來看,循環嵌套就是把內層循環當成外層循環的循環休。只有內層循環的循環條件爲假時,纔會徹底跳出內層循環,才能夠結束外層循環的當次循環,開始下一次循環。blog

下面是一個循環嵌套的示例代碼:it

# 外層循環
for i in range(0, 5) :
    j = 0
    # 內層循環
    while j < 3 :
        print("i的值爲: %d , j的值爲: %d" % (i, j))
        j += 1

運行上面程序,將看到以下運行結果:class

i的值爲: 0 , j的值爲: 0
i的值爲: 0 , j的值爲: 1
i的值爲: 0 , j的值爲: 2
......

從上面的運行結果能夠看出,當進入嵌套循環時,循環變量 i 開始爲 0,這時即進入了外層循環。當進入外層循環後,內層循環把 i 當成一個普通變量,其值爲 0。在外層循環的當次循環中,內層循環就是一個普通循環。變量

實際上,嵌套循環不只能夠是兩層嵌套,還能夠是三層嵌套、四層嵌套……不論循環如何嵌套,均可以把內層循環當成外層循環的循環體來對待,區別只是這個循環體中包含了須要反覆執行的代碼。循環

相關文章
相關標籤/搜索