python怎麼迴圈巢狀

highhand發表於2021-09-11

python怎麼迴圈巢狀

巢狀迴圈:

概念:迴圈中再定義迴圈,稱為巢狀迴圈;

【注意】巢狀迴圈可能有多層,但是一般我們實際開發最多兩層就可以搞定了(99%的情況)

格式:

1、while中套while常用

2、while中套for in

3、for in中套while

4、for in中套for in更常用

演示for in...for in:

格式如下:

for i in 容器物件:
語句塊1
for j in 容器物件:
語句塊2

執行流程:

r1 = range(1,3)
r2 = range(1,3)
for i in r1:
print('我是外層迴圈...')
for j in r1:
print('我是內層迴圈...')
print("i=%d,j=%d" %(i,j))

先執行外層迴圈,將r1中的1給到i,然後執行外層迴圈體,

列印完'我是外層迴圈...',遇到了內層迴圈,執行它,將r2中的1給到j,然後執行內層迴圈體,

列印完'我是內層迴圈...',再列印i=1,j=1,意味著內層迴圈的第一次結束了,

進行第二次,...(i=1,j=2),內層迴圈結束了,外層迴圈開始迭代,將r1中的2給到i,以此類推...

總結:

(1)外層迴圈執行一次,內層迴圈全部執行一遍。

(2)如果外層迴圈需要執行m次,內層迴圈需要執行n次,巢狀迴圈一共會執行m*n次。

案例一:

#演示巢狀迴圈的使用:
r1=range(1,3)
r2=range(1,3)
for i in r1:
    print('我是外層迴圈...')
    for j in r2:
        print('我是內層迴圈...')
        print('i=%d,j=%d' %(i,j))

案例二:

使用巢狀迴圈列印各種圖形:

圖形一:

*****

*****

*****

*****

*****

for i in range(1,6): #外層迴圈控制行數
    for j in range(1,6): #內層迴圈控制每一行列印的次數
        print('*',end='')
    #此處的print()的作用僅僅是為了換行
    print()

圖形二:

*

**

***

****

*****

for i in range(1,6):
    for j in range(1,i+1):
        print('*',end='')
    # 此處的print()的作用僅僅是為了換行
    print()

python學習網,免費的線上學習,歡迎關注!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/810/viewspace-2835016/,如需轉載,請註明出處,否則將追究法律責任。

相關文章