顯示具有 Function 標籤的文章。 顯示所有文章
顯示具有 Function 標籤的文章。 顯示所有文章

2023年7月10日 星期一

百香果Python程式設計-函式的傳回值

在Python中,函式可以使用 return 關鍵字返回一個或多個值。返回值是函式執行後生成的結果,可以用於後續的操作、賦值給變數或作為函式調用的結果。
以下是幾種函式返回值的情境:
  1. 單一返回值:函式可以使用 return 關鍵字返回一個單一值。在函式中使用 return 關鍵字後,函式將結束執行並返回指定的值。
  2. 多重返回值:函式也可以返回多個值,這些值可以使用逗號分隔。在函式的 return 陳述式中,可以指定多個值,並使用逗號將它們分隔。
  3. 返回 None:如果在函式中沒有指定 return 陳述式,或者只有 return 而沒有返回值,則函式將默認返回 None。
範例一:單一返回值
def calculate_price(單價, 交易量): 總價格 = 單價 * 交易量 return 總價格 單價 = 100 交易量 = 12 總價格 = calculate_price(單價, 交易量) print("購買", 交易量, "公斤百香果的總價格為:", 總價格, "元")

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

範例二:多重返回值
def calculate_price_and_discount(單價, 交易量, 折扣): 總價格 = 單價 * 交易量 折扣後價格 = 總價格 * (1 - 折扣) return 總價格, 折扣後價格 單價 = 100 交易量 = 12 折扣 = 0.1 總價格, 折扣後價格 = calculate_price_and_discount(單價, 交易量, 折扣) print("購買", 交易量, "公斤百香果的總價格為:", 總價格, "元") print("折扣後價格為:", 折扣後價格, "元")

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

範例三:返回 None
def check_origin(產地): if 產地 == "台灣": print("這是台灣產地的百香果") else: print("這不是台灣產地的百香果") 百香果產地 = "台灣" check_origin(百香果產地)

執行結果: 這是台灣產地的百香果

百香果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

百香果Python程式設計-函數定義和使用

 基礎教學:Python一下百香果故鄉在南投埔里、百香果含有超過130種以上的芳香物質,130是整數還是字串?

      Python的函式用於將一段程式碼封裝成可重複使用的區塊。函式具有以下幾個主要的使用目的:

  1. 代碼組織和模組化:函式能夠將一段程式碼封裝在一個名稱下,從而提供了代碼組織和模組化的方式。將程式碼分解為函式可以使程式更加結構化、易於管理和維護。你可以將相關的操作放在同一個函式中,使代碼更具可讀性和可維護性。
  2. 代碼重用:函式的另一個重要目的是促進代碼的重用。一旦你定義了一個函式,你可以在程式中的不同位置多次調用它。這樣可以避免在多個地方重複編寫相同的程式碼,提高程式開發的效率和重用程式碼的程度。
  3. 提高程式碼的可讀性:使用函式可以使程式碼更具可讀性。函式可以為程式碼塊提供描述性的名稱,使程式的邏輯和功能更易於理解。這樣可以減少冗長和重複的程式碼,使程式更加簡潔和易於理解。
  4. 參數傳遞:函式可以接受參數,這使得我們可以向函式傳遞數據進行處理。透過參數,我們可以使函式更具靈活性,能夠處理不同的輸入和情境。參數可以是必要的或可選的,你可以根據需求定義不同的參數類型。
  5. 程式的邏輯切割:函式允許你將程式的邏輯切割為更小的塊。這使得程式開發變得更加模組化和可管理。你可以將程式的不同部分分解為多個函式,每個函式負責不同的任務。這樣可以使程式碼更具可讀性,並且使得追蹤錯誤和進行調試更加容易。


        函式是Python中非常重要的概念,可以幫助你組織和重用程式碼,提高程式碼的可讀性和可維護性。使用函式可以將程式邏輯切割為更小的部分,提供彈性的參數傳遞方式,使程式開發更高效、模組化和易於管理。

範例一:計算百香果的價格

程式碼:
def calculate_price(單價, 交易量):
    總價格 = 單價 * 交易量
    return 總價格

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

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

範例二:檢查百香果是否為埔里產地
程式碼:
def check_origin(產地):
    if 產地 == "埔里":
        return True
    else:
        return False

百香果產地 = "埔里"
if check_origin(百香果產地):
    print("這是埔里產地的百香果")
else:
    print("這不是台灣產地的百香果")

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

範例三:列出百香果的營養成分
程式碼:
def list_nutrients():
    營養成分 = ["維生素A", "維生素C", "鎂", "磷", "鐵", "鋅"]
    for 成分 in 營養成分:
        print(成分)

print("百香果的營養成分:")
list_nutrients()

執行結果:
百香果的營養成分:
維生素A
維生素C
鎂
磷
鐵
鋅