W14: 5/16 === ### [Python 函數 (Python Functions)](https://www.w3schools.com/python/python_functions.asp) #### 創建函數 創建函數時,藉由函數前端`def`來定義函數,並於後端附上添加`:`,以編寫內容。 函數名稱後方須附上`()`,若需使用參數,將參數名稱置入`()`裡。 不同的參數由`,`分隔,如: ``` def f(x, y): print(Longitude of x: y) ``` --- #### 調用函數 調用函數時,只需另外寫上`f()`。 可在`()`內填入任何參數,不同的參數由`,`分隔。 有兩種方法代入參數: > 依序填入,如: ``` f("Seoul", 127) ``` > 或者指定,如: ``` f(x = "Seoul", y = 127) ``` ※ 若該函數需用n個參數,就得輸入n個,不多不少。 --- #### 默認參數 參數是可以預設數值的,只要先指定參數即可。如: ``` def f(x = "San Francisco", y = -122): print(Longitude of x: y) ``` 這時若未另外指定參數,就會依預設值代入參數。 --- ### 考試 題目: 1. 請定義一個函數myFunction,傳入一個參數n。此函數可以計算出1,2,...,n的總和。函數能傳回後的總和。(必須用for迴圈完成) 2. 請定義一個函數myFunction,傳入一個參數n。此函數可以找出1,2,...,n的之間2的倍數,並列印出到螢幕上。(必須用for迴圈完成) 3. 請在螢幕上印出如下圖案 (必須用for迴圈完成) ``` * *** ***** ******* ********* *********** ************* ``` [答案](https://colab.research.google.com/drive/1cip6dk6Z9Cx6sKltfy5PYYd7T6cIVgOY)