python中的循環結構問題

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))

運行結果

總結

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: