超乎簡單的Python語法(III)

發佈日期:2019-10-16

王宗偉

理工學院

材料科學系

這一次老師先從For迴圈開始講解,For迴圈是一種有限制次數的迴圈,當條件式成立後,開始執行迴圈內容直到結束,老師首先給我們一個例題,要求程式印出從1到輸入給程式數字,中間所涵蓋的所有整數,這時候要給定一個範圍設定值range(),range的括號內要設定為(所設變數,所設變數+1),括號做邊的數字為初始值,右邊則為結束值,在range的括號中,還能設定第三個數字,這個數字在range中表示間隔數,若是range只輸入一個數字,程式會把他定為0到自己設定數字的範圍,當我們要計算到所設變數值時,結束值要設定成所設變數值+1,不然程式不會把所設變數納入處理範圍之內,接著老師要我們計算範圍整數總和,在這邊我們需要自己另外設定一個變數,讓這個迴圈每次運行時都將結果做一次加總,在這個程式中,老師要我們特別注意,最後要程式印出結果時,print不能縮排在For迴圈下面,否則程式會將它當作是迴圈的一部份,每次迴圈進行加總時,順便印出一個結果。

接著老師帶我們看到當初上程式課時,考卷上面的題目,99乘法表,這個程式老師要我們用2個For迴圈操作,這個程式要注意的重點是在每一次列式後,印出來的數字都會黏在一起,若是只在第二個For迴圈縮排後的print加上條件換行,它會在列出一條式子後進行換行,所以總共會有81行,若是要有規則的排列行列,那就要在程式結束後在第一個For迴圈進行縮排在加一個print()讓程式進入j的迴圈後要進行換行,才會讓版面看起來整齊。

如果要讓程式在運行時停止的話,可以在程式碼中加入條件式break,當程式遇到某個條件時,它會自動停止,老師先舉簡單的例子,要我們寫For迴圈範圍1到11的數列,但是要在跑到6的時候要終止,並且把前面的數字印出來,這時候只要在程式碼設定If(變數==6),進行break,再把print縮排放入迴圈中,就能印出範例結果,利用break停止的性質,我們也可以找出2個數字中,最小的倍數,透過兩數相乘後所有因數開始找出兩者皆能整除的因數,也就是兩數共同的倍數,當超過第一個倍數就讓程式停止,不讓其他倍數出現,求出最小的公倍數。

最後老師帶我們看一個印出數列跳過數字的範例,若是今天我有一項數列包含1-25的整數,但我不想要印出5的倍數,我可以設定條件continue,若是條件式成立,刪除成立項的結過,然後繼續執行程式,若是把數列中每個數字都與5進行相除,結果為0則刪除結果,以達到去除5的倍數的數列。