查看完整版本: python初學者 函式問題
頁: [1]

zzxx1133 發表於 2016-9-23 11:35 PM

python初學者 函式問題

def add(x, y):
    return x + y

def do_twice(func, x, y):                 #line 1 至此我看得懂
    return func(func(x, y), func(x, y))#我不理解

a = 5
b = 10

print(do_twice(add, a, b))               

Result:
>>>
30
>>>
有沒有人能解釋一下return func(func(x, y), func(x, y))這裡是甚麼情況?
還有結果為甚麼是30? 感激
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div>

snowflying 發表於 2016-9-24 09:42 PM

func , x , y 分別以 add , 5, 10 傳入
所以 func(func(x, y), func(x, y))
相當於 add(add(5, 10), add(5, 10))
add 計算 x + y 的結果
= add(15, 15)
= 30
頁: [1]