--- title: 10.Python 函式參數詳解:參數預設值、名稱對應、任意長度參數 By 彭彭 tags: 學習, 紀錄 --- 10. Python 函式參數詳解:參數預設值、名稱對應、任意長度參數 By 彭彭 {%youtube OOJmhezLd4o %} ## pythin 程式設計入門:函式參數詳解 #### 1. 預設資料 基本語法 def 函數名稱 (參數名稱=預設資料): 函式內部的程式碼 程式範例 -函式參數的預設資料 1. 印出Hello * 參數msg預設資料為 "Hello" def say(msg="Hello"): print(msg) say() >Hello 2. 印出Hello Function def say(msg="Hello"): print(msg) say("Hello Function") >Hello Function #### 2. 名稱對應 基本語法 def 函數名稱 (名稱1,名稱2): 函式內部的程式碼 呼叫函式,以參數名稱對應資料 函式名稱(名稱2=3,名稱1=5) (可以指令參數名稱不順序) 程式範例 1. 定義一個可以做除法的函式 * 第一範例 def devide(n1,n2): result=n1/n2 print(result) divide(2,4) >0.5 * 第二範例-函式參數的名稱對應 def devide(n1,n2): result=n1/n2 print(result) divide(n2=2,n1=4) >2.0 #### 3. 無限參數 基本語法 def 函數名稱(*無限參數): 無限參數以Tuple資料型態處理 函式內部的程式碼 呼叫函式 可傳入無限數量的參數 函式名稱(資料一,資料二,資料三) 程式範例 函式接受無限參數msgs def say(*msgs) 以Tuple的方式處理 for msg in msgs: (迴圈) print(msg) 呼叫函式,傳入三個參數資料 say("Hello","Arbitrary","Arguments") >Hello >Arbitrary >Arguments ### 練習 一. 參數的預設資料:定義一個函式做開方 開方有兩個重要的參數:base,exp 乘法* 開方** 1. def power(base,exp): print(base**exp) power(3,2) >9 2.設定預設值 若沒輸入特定參數則會用預設值 任何零次方都是1 def power(base,exp=0): print(base**exp) power(3,2) power(4) >9 >1 3.除法函式 def divide(n1,n2): print(n1/n2) divide(2,4) >0.5 3.除法函式:使用參數名稱對應 def divide(n1,n2): print(n1/n2) divide(2,4) divide(n2=2,n1=4) >0.5 >2.0 4.無限/不定 參數資料 def avg(*ns): print(ns) avg(3,4) avg(3,5,10) avg(1,4-1,-8) >(3,4) (Tuple有序列表) >(3,5,10) >(1,4-1,-8) 5. def avg(*ns): for n in ns: (把資料中一個一個拿出來) print(ns) avg(3,4) >3 >4 6. ns是一個列表一個Tuple有序列表 def avg(*ns): sum=0 for n in ns: sum=sum+n print(sum/len(ns)) avg(3,4) avg(3,5,10) avg(1,4-1,-8) >3.5 >6.0 >-1.0 ### End