2023年7月10日 星期一

百香果Python程式設計-函式的參數設計

在Python中,函式的參數是用於接收輸入值的變數。你可以在函式定義中指定參數,以便在函式內部使用這些參數進行操作。以下是Python中函式參數設計的幾種常見方式:
  • 必要參數:必要參數是在函式呼叫時必須提供的參數,它們的順序和數量必須與函式定義中的參數相符。如果在呼叫函式時沒有提供必要參數,將引發錯誤。
  • 預設參數:預設參數是在函式定義中指定的參數,它們有一個預設的值。如果在函式呼叫時沒有提供對應的參數,將使用預設值。預設參數可以為函式提供更多的靈活性。
  • 關鍵字參數:關鍵字參數是在函式呼叫時使用參數名稱和對應的值進行指定的參數。這樣可以不按照參數的順序提供參數值,並且可以避免由於參數順序錯誤而產生的混淆。
  • 不定數量參數:有時候你可能需要處理不定數量的參數。Python提供了兩種方式來處理這種情況:
  1. 可變個數的位置參數(args):使用星號()前綴來指定一個可變數量的位置參數。這允許函式接受任意數量的位置參數,並將它們作為一個元組傳遞給函式。
  2. 可變個數的關鍵字參數(kwargs):使用雙星號()前綴來指定一個可變數量的關鍵字參數。這允許函式接受任意數量的關鍵字參數,並將它們作為一個字典傳遞給函式。
範例一:必要參數

def calculate_price(單價, 交易量): 總價格 = 單價 * 交易量 return 總價格 單價 = 100 交易量 = 12 總價格 = calculate_price(單價, 交易量) print("購買", 交易量, "公斤百香果的總價格為:", 總價格, "元")

執行結果: 購買 12 公斤百香果的總價格為: 1200 元

範例二:預設參數
def calculate_price(單價, 交易量=1): 總價格 = 單價 * 交易量 return 總價格 單價 = 100 總價格 = calculate_price(單價) print("購買1公斤百香果的總價格為:", 總價格, "元") 總價格 = calculate_price(單價, 12) print("購買12公斤百香果的總價格為:", 總價格, "元")

執行結果: 購買1公斤百香果的總價格為: 100 元 購買12公斤百香果的總價格為: 1200 元

範例三:關鍵字參數
def check_origin(產地): if 產地 == "埔里": return True else: return False 百香果產地 = "埔里" if check_origin(產地=百香果產地): print("這是埔里產地的百香果") else: print("這不是埔里產地的百香果")

執行結果: 這是埔里產地的百香果

範例四:可變個數的位置參數
def list_nutrients(*營養成分): for 成分 in 營養成分: print(成分) list_nutrients("維生素A", "維生素C", "鎂", "磷", "鐵", "鋅")

執行結果: 維生素A 維生素C 鎂 磷 鐵 鋅

範例五:可變個數的關鍵字參數
def print_info(**資訊): for key, value in 資訊.items(): print(key + ": " + str(value)) print_info(品名="百香果", 產地="埔里", 顏色="黃色", 價格=100)

執行結果: 品名: 百香果 產地: 埔里 顏色: 黃色 價格: 100

沒有留言:

張貼留言