iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 20
0
自我挑戰組

30天深入探索Python系列 第 20

第二十天- for 迴圈

  • 分享至 

  • xImage
  •  

如果老師叫你用 python 計算出 1 到 10 所有整數的總和,大部分的人應該都會選擇慢慢加來取得答案,但如果老師叫你算出 1 到 1000 的所有整數總和呢?如果你還是選擇慢慢加,應該可以在漫長的過程中觀察到你一直在重複類似的加法動作,這時後 for 迴圈就派上用場了!
這是 for 迴圈的基本架構

for Var in iterableobject :
suite

for 和 in 是 Python 的關鍵字,兩者之間可以放置使用者自訂的變數,而 in 後則可接一個序列 (Sequence),串列 (list)、字串 (str)、元組 (tuple) 等皆是序列的一種。
迴圈會依序從序列取得元素,並將元素指定給前面自訂的變數,再執行迴圈裡的內容,直到序列每一元素都被取出過為止。
先試著用 for 迴圈寫出一段計算整數總和的程式碼
https://ithelp.ithome.com.tw/upload/images/20181019/20112033cqmCivu8CO.png

因為上次介紹到 Repl.it 這個網站,今天就試著用這個網站來實作,用起來發現在目前程式碼不複雜的情況下,對我這初學者來說和 IDLE 是沒有什麼差別。
這邊大家可以看到我在 for 迴圈基本架構上進行了一點更動。因為是要算出整數總和所以我使用了range()函數來進行選取的動作,一開始我用變數 add 來存放輸入的 int 數字,我輸入了 4 所以 range (0, 4) 也就是 range(4) 裡面就放了從 0 到 3 的整數,知道這些之後就來看看整個迴圈運作流程。
首先 n = n + add + 1(第一個取出的add為0)結果的 n 為 1
https://ithelp.ithome.com.tw/upload/images/20181019/20112033eSrIfApJ87.png

再來因為 range()裡面還有資料所以再回去取得 add = 1 ,因此 n += add + 1 會等於 1 += 1 + 1 等於 3 ,以此類推,因為 add 可以取得 0 到 3 一共 4 個整數,所以印出來的結果會有 4 個。但是我們只要取得最後一個值 10 而已,我們可以發現 print 在縮排上是包含在 for 迴圈裡的,所以我們只要把它整個往前移一個跳出迴圈就可以印出最終的 n 的值了
https://ithelp.ithome.com.tw/upload/images/20181019/20112033ELfKnaa3b1.png

既然你能用 for 迴圈寫出這段計算總合的程式碼了,數字再大也難不倒你了吧。


上一篇
第十九天-網站推薦
下一篇
第二十一天- while 迴圈
系列文
30天深入探索Python30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言