# loop ---- ### 迴圈 --- ## 什麼是loop呢? ---- ## 滿足某條件後重複執行的函數 ### 而我們今天來介紹兩種用法 --- ## 第一種用法是while ---- ### example ```python name = input("輸入你的名字:") while name == "": print("你沒有輸入你的名字") name = input("輸入你的名字:") print(f"Hello {name}") ``` ---- ### 用int(整數)也是OK的喔 ```python age = int(input("輸入你的年齡:")) while age < 0 : print("年齡不得為負數") age = int(input("輸入你的年齡:")) print(f"你的年齡為{age}歲") ``` --- ## 另一個用法是for ---- ### 用法 ---- ``` for x in range (a,b,c): print(x) 括號中的a,b,c分別是 以a為初值、當小於b時重複這個迴圈、每次加c ``` ---- ## example ```python for x in range(1, 11, 2): print(x) ``` ##### 第一格 1 是指x的初值,第二格 11 是指當x小於11重複執行此段落,第三格是每執行一次x加2 ---- ## reverse #### 反轉 ---- ## example 數字也可以倒過來 ```python for x in reversed(range(1,11,1)):#用reversed可以把數字倒過來 print(x) print("Happy new year!!") ``` --- ## loop補充 ---- ## loop可以搭配continue和break使用 ---- # continue ---- ## continue可以將迴圈推回起點,但其中的值不會變動 ---- ## continue example ```python for x in range(1, 20, 1): if x == 10: continue else: print(x) ``` ---- ## 輸出後你會發現10不見了,因為當x等於10的時候if成立執行continue,loop就回到起點不會把x輸出 ---- # break ---- ## break可以直接中斷整個迴圈 ---- ## break example ```python for x in range(1, 21, 1): if x == 13: break else: print(x) ``` ---- ## 你會發現輸出倒12就結束了,因為x到13時迴圈就被中斷了,所以只會輸出到12 ---- ### 還有一個重點 ### 你們的while和 for in range後面 # **記得加 「 : 」** #### 沒有加的話 你的程式就會跑不動 ---- ![image alt](https://ga.awoo.com.tw/wp-content/uploads/2018/11/Error_404__Not_Found___1.png) --- ## 練習一下 階乘,求n!該怎麼寫呢? (限制用迴圈) ---- ## 答案 ```python sum = 1 temp = int(input()) for x in range(1, temp+1, 1): sum = sum*x print(sum) ``` ---- ## 進階練習 求1!+2!+...+n!=? ---- ## 答案 ```python sum1 = 0 temp = int(input()) for x in range(1, temp+1, 1): sum2 =1 for y in range(1, x+1, 1): sum2 = sum2*y sum1 = sum1+sum2 print(sum1) ``` --- ## 一些重點 ---- ## 最後還有一個重點 ### 非常重要 內容不長 但影響甚大 #### [按我了解更多](https://youtu.be/BBJa32lCaaY) ---- #### 好啦 不開玩笑了 #### 這個是while的一些細項內容 ##### 對while還不太清楚的人可以再去了解一下 ###### [Python While 迴圈語句](https://www.runoob.com/python/python-while-loop.html)
{"description":"迴圈\n","title":"loop","contributors":"[{\"id\":\"35a0644c-29d6-4dd3-98eb-9df68421a475\",\"add\":2200,\"del\":38}]"}
    173 views
   Owned this note