return在這段代碼為什么有縮進,return后面為什么沒有代碼
def move(n, a, b, c):
? ? if n ==1:
? ? ? ? print a, '-->', c
? ? ? ? return
? ? move(n-1, a, c, b)
? ? print a, '-->', c
? ? move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
def move(n, a, b, c):
? ? if n ==1:
? ? ? ? print a, '-->', c
? ? ? ? return
? ? move(n-1, a, c, b)
? ? print a, '-->', c
? ? move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
2019-08-07
舉報
2019-09-03
把n看成n=1+n-1,return代碼塊屬于if的,return代表結束,不寫也可以。
2019-08-23
第一個問題,我們是判斷當n==1的時候,就直接打印a-->c。打印完了還執行后面的內容嗎?顯然不了,這層函數就執行完了,所以直接返回。這個縮進表示它是if的內容,也就是只有當n==1才這么跑。
第二個問題,這個跟c語言的類似的,我們到達底層之后,只需要打印a-->c就行了,沒有別的返回值,只寫return,后面不加任何具體數值表示返回空值。
2019-08-07
return后面沒有代碼,表示這個函數沒有返回值,直接結束這個函數
縮進的話,表示屬于if的那個語塊
個人小小見解,不對請指正