首頁 > 軟體

python中的迴圈結構問題

2023-03-02 18:00:10

python迴圈結構

Python中迴圈結構有兩種型別,分別是:for(遍歷迴圈)於while(無限迴圈),接下來對兩種迴圈型別的使用與注意事項進行介紹。

遍歷迴圈:for

for 迴圈變數 in 遍歷結構:    # 即逐一取遍歷結構中的元素賦值於迴圈變數
    語句塊                    

遍歷結構可以是字串、檔案、range()函數或者其他組合資料型別。

組合資料型別:

  • 序列型別 (字串、元組、列表)
  • 集合型別 (集合)
  • 對映型別 (字典)

使用range函數進行次數的迴圈,但是要注意range(n)產生的整數列表是不包含n的,其中最大的數值為n-1,使用方法為:for n in range(x):

在遍歷迴圈還有一種擴充套件模式,為for—else模式,語法格式為:

for 變數 in 結構:
    語句塊
else:
    語句塊    #在迴圈正確結束之後,else之後的結構才會執行。

無限迴圈:while

whlie 條件語句:
    語句塊

在條件為True的時候去執行語句塊,之後每執行一次進行條件的判斷,直到條件語句的值為False時結束執行(排除語句塊內含有主動結束該回圈的語句)。

同樣,whlie也有於for相同的擴充套件模式,語法結構:

whlie 條件:
    語句塊
else:
    語句塊  #與上面的for相同,正確結束迴圈執行後執行該語句塊

迴圈的控制:break和continue

在迴圈結構的語句塊中,可以包含這兩個輔助迴圈控制的保留字

其中break的作用是可以跳出最內層的迴圈(即結束脫離迴圈)然後繼續執行迴圈之後的程式碼。

(如果程式碼中包含多層迴圈,break只結束脫離最內層的迴圈)

continue的作用是可以結束本次單個迴圈,但是不結束脫離迴圈,然後繼續執行該回圈。

在這兩種迴圈語句中使用break語句之後,不對其擴充套件模式else包含的語句執行。

Python迴圈結構:用while迴圈求1~n的平方和

功能要求

編寫一個控制檯應用程式,使用while迴圈結構依次求出1~5的平方並將結果輸出。

實現步驟

i = 0
 
while i < 5:
 
    i += 1
 
    print("%d 的平方值為 %d" % (i, i * i))
 
    # print("%d 的平方值為 %d" % (i, i ** 2))

執行結果

功能要求

編寫一個控制檯應用程式,使用while迴圈結構計算1~10的平方和,即求12 + 22 + 32 + ... + 102的值並顯示輸出。

程式分析

1. 定義變數sum用來儲存求平方和的值,初始值為0。

2. 定義迴圈變數n,用來表示當前求平方的數的值。

3. 利用while迴圈依次求出1~10的的平方和加到變數sum中。

4. while迴圈的條件是n小於10。

實現步驟

sum, n = 0, 0
while n < 10:
 
    n += 1
    sum += n ** 2
 
print("1 ~ 10 的平方和為:%d" % sum)

執行結果

功能要求

編寫一個控制檯應用程式,使用while迴圈結構計算1~n的平方和,即求12 + 22 + 32 + ... + n2,直到累加和大於或等於10000為止,並將n的值和平方和顯示輸出。

程式分析

1. 定義變數sum用來儲存求平方和的值,初始值為0。

2. 定義迴圈變數n,用來表示當前求平方的數的值。

3. 利用while迴圈依次求出1~10的的平方和加到變數sum中。

4. while迴圈的條件是平方和小於等於1000,即sum <= 1000。

實現步驟

sum, n = 0, 0
 
while sum < 10000:
    n += 1
    sum += n ** 2
 
print("1 ~ %d 的平方和為:%d" % (n, sum))

執行結果

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com