返回值

Python SELF TW
等級 6 , 課堂 2
開放

8.1 return運算子

在Python中,return運算子在函式中扮演核心角色,因為它讓函式可以返回自己的值。理解其用法對於有效地開發軟體非常重要。

return運算子結束函式的執行並將結果「返回」給調用的代碼。如果函式需要輸出將被進一步使用的結果,會使用return

返回值

函式可以返回任何類型的資料,包括數字、字串、物件,甚至其他函式和None。例如:


def sum(a, b):
    return a + b
        
result = sum(5, 3)
print(result)  # 輸出8

相加結果a + b可以被指定給變數result

返回多個值

Python允許使用元組從函式返回多個值:


def get_user():
    name = "伊凡"
    age = 25
    return name, age
        
user_name, user_age = get_user()
print(user_name, user_age)  # 輸出 伊凡 25

使用return結束函式

return運算子也可以用來立即結束函式,包括函式內的迴圈或條件區塊:


def check_password(pswd):
    if len(pswd) < 8:
        return "密碼太短"
    return "密碼接受"

沒有值的return

如果return沒有值或被省略,函式返回None


def print_message(text):
    print(text)
    return
        
result = print_message("嗨")
print(result)  # 輸出 None

return運算子是Python中的強大工具,提供了程序流管理的靈活性。它允許函式不僅返回結果供進一步使用,還控制執行邏輯,使代碼更清晰且易於理解。

8.2 pass運算子

在Python中,有一個特殊的運算子——pass,它什麼也不做。pass運算子用作佔位符,在語法上需要內容,但功能上尚未定義(需要有代碼,但還沒想好要什麼)。

這在處理大型專案時特別有用,當你想要組織程序而不讓它執行任何操作時。以下是一些pass的使用例子。

在函式定義中:


def my_function():
    pass

這裡pass用來定義暫無實現的函式。

在迴圈和條件中:


for item in my_list:
    pass

如果需要創建迴圈,但不需要在其體內執行任何操作。

在類中:

定義沒有方法和屬性的類,以保留名稱和結構供未來使用。

pass運算子經常在開發和測試過程中使用,當程序的結構已經很清晰,但各個組件的實現細節尚不明確。這使程序員能夠組織代碼並逐步添加功能而不會破壞應用程序的整體運行。

8.3 返回函式

在Python中,函式返回另一個函式的能力是強大的工具,得益於閉包*和頭等函式的支持。這種語言特性允許使用裝飾器*函式工廠*等概念開發靈活且表達力強的程序。

在Python中,函式是物件,這意味著它們可以被賦值給變數,作為引數傳遞給其他函式,或作為結果返回。這一特性使函式成為創建模塊化和易於測試代碼的強大工具。

讓我們以生成次方函式作為例子。函式將生成平方函式、立方函式等等。以下是這樣的代碼:


def power(exponent):
    def inner(base):
        return base ** exponent
    return inner
        
square = power(2)
print(square(3))  # 輸出9
        
cube = power(3)
print(cube(3))  # 輸出27

注意——函式power沒有調用函式inner。相反地,在power函式內部宣告了函式inner,帶有引數base。但inner函式不僅被宣告,還使用了exponent引數。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION