為什麼要用 return?

前兩篇我們介紹了 function 的基本概念、還有括號裡有沒有東西的差異,今天來看看很重要的 return 吧!

在討論 function 的時候,最常見的問題,就是我明明就把結過 print 出來了,為什麼我還要 return?

這就要先來看看 print() 跟 return 的差別了,

以製作一個加總數字的 function 來看:

        def add(a,b):
                print(a+b)

假設執行 add(2,6),我們也是可以直接 print 出答案 8 的,但如果今天我們需要用到這個加總後的結果,裝到箱子裡面的東西,就會是空的!

        def main():
                ans = add(2,6)
                print(ans)

這個時候執行出來的結果就會是 8 跟 None!
因為我們的 add 只有 print 的功能,並沒有丟東西回去給我們的使用者,所以後面 ans 的結果是什麼都沒有~
所以如果我們需要使用到結果的時候,就要透過 return 來讓使用者知道答案了!

        def add(a,b):
                return a+b

此時執行出來就會是 main 裡面的 8 了!
雖然都是印出 8 的結果,但調整後的結果,不只是單純印出一個答案,而是把資料好好的存下來,然後也就可以在別的 function 裡面使用,讓我們的使用上更多元了。

 

總結:

    • print() 只能「給人看」,return 還可以「給程式用」
    • 要把 function 的結果拿去做更多事情,就一定要用 return
    • print() 和 return 的用途不同,兩個都是很重要的方法,要好好理解使用時機的差異!

Close Menu