在 Python 中,為什麼要使用 return 語句?
Python 中的 return 語句用於從函式中返回一個值或一組值。當在函式中遇到 return 語句時,函式執行將停止,並且 return 語句中指定的值將返回給呼叫方。
return 語句的主要目的是將資料從函式傳遞迴呼叫方。呼叫方可以隨後使用此資料進行進一步處理。
為什麼要使用 return 語句?
return 語句在許多情況下都很有用。一些常見的用例包括:
將資料傳遞迴呼叫方:如前所述,return 語句的主要目的是將資料從函式傳遞迴呼叫方。當函式對輸入資料執行某些計算或操作並需要將結果傳遞迴呼叫方時,這很有用。
提前退出函式:在某些情況下,函式可能需要根據某些條件提前退出。這可以透過使用 return 語句來實現。當遇到 return 語句時,函式執行將停止,並將控制權返回給呼叫方。
返回多個值:在 Python 中,可以使用 return 語句從函式中返回多個值。當函式需要返回多個彼此相關的值時,這很有用。
以下是在 Python 中使用 return 語句的一些示例:
示例 1:從函式返回一個值
在此示例中,add_numbers 函式接受兩個引數並使用 return 語句返回它們的和。然後將返回值儲存在 result 變數中,然後將其列印到控制檯。
def add_numbers(num1, num2): sum = num1 + num2 return sum result = add_numbers(5, 10) print(result)
輸出
15
示例 2:提前退出函式
在此示例中,check_number 函式接受一個數字作為輸入,並返回一個字串,指示該數字是負數、零還是正數。如果數字為負數,則函式將使用 return 語句提前退出並返回字串“Number is negative”。對零和正數使用相同的方法。
def check_number(num): if num < 0: return "Number is negative" elif num == 0: return "Number is zero" else: return "Number is positive" result = check_number(-5) print(result)
輸出
Number is negative
示例 3:從函式返回多個值
在此示例中,我們定義了一個名為 get_student_info 的函式,它接受三個引數:name、age 和 grade。該函式使用元組返回這三個值。然後,我們使用引數“John”、15 和“9th”呼叫 get_student_info 函式,並將返回的元組儲存在名為 info 的變數中。最後,我們列印 info 的值,即 ('John', 15, '9th')。
def get_student_info(name, age, grade): return name, age, grade info = get_student_info("John", 15, "9th") print(info)
輸出
('John', 15, '9th')
在此示例中,我們使用元組從函式返回多個值。當我們需要從函式返回多個值時,這很有用。在這種情況下,我們將學生的姓名、年齡和年級作為元組返回。如果我們以後需要在程式碼中使用這些值,則可以將此元組解包到單獨的變數中。例如:
在此示例中,我們將 get_student_info 函式返回的元組解包到名為 name、age 和 grade 的單獨變數中。然後,我們可以在程式碼中根據需要使用這些變數。
示例 3A
def get_student_info(name, age, grade): return name, age, grade name, age, grade = get_student_info("John", 15, "9th") print(name) print(age) print(grade)
輸出
John 15 9th
示例 4:使用 return 語句從函式返回值
在此示例中,我們定義了一個名為 add_numbers 的函式,它接受兩個引數 a 和 b。該函式使用 return 語句返回 a 和 b 的和。然後,我們使用引數 5 和 7 呼叫 add_numbers 函式,並將結果儲存在名為 result 的變數中。最後,我們列印 result 的值,即 12。
def add_numbers(a, b): return a + b result = add_numbers(5, 7) print(result)
輸出
12
示例 5:用於提前退出函式
return 語句也可用於提前退出函式。以下是一個示例:
在此示例中,我們定義了一個名為 check_password 的函式,它接受一個引數 password。該函式檢查密碼是否至少包含 8 個字元,並且同時包含字母和數字。如果這些條件中的任何一個不滿足,則該函式將使用 return 語句返回 False。如果所有條件都滿足,則該函式將返回 True。然後,我們使用三個不同的密碼呼叫 check_password 函式,並將結果儲存在名為 result1、result2 和 result3 的變數中。最後,我們列印這些變數的值以驗證函式是否正常工作。
def check_password(password): if len(password) < 8: return False if password.isalpha(): return False if password.isnumeric(): return False return True result1 = check_password("password") result2 = check_password("12345678") result3 = check_password("password123") print(result1) print(result2) print(result3)
輸出
False False True