課程
/后端開發
/Python
/初識Python
有人能給我解釋一下為什么這段代碼輸出是右邊的結果嗎?
2019-06-01
源自:初識Python 7-5
正在回答
# move(n, a, b, c)表示的是有n個盤子在a柱子上,將要移到b柱子上面去
def move(n, a, b, c):
# 如果a柱子上面只有一個盤子,則直接移到c柱子上面去并輸出路徑,結束遞歸
? ? if n == 1:??
? ? ? ? print a, '-->', c
? ? ? ? return
# 表示的是將n-1的盤子從a柱子上面移到b柱子上面去
? ? move(n-1, a, c, b)
# 輸出最下面個盤子移從a移到c的路徑
? ? print a, '-->', c
# 將b柱子上面的n-1個盤子移動到c柱子上面
? ? move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-06-01
# move(n, a, b, c)表示的是有n個盤子在a柱子上,將要移到b柱子上面去
def move(n, a, b, c):
# 如果a柱子上面只有一個盤子,則直接移到c柱子上面去并輸出路徑,結束遞歸
? ? if n == 1:??
? ? ? ? print a, '-->', c
? ? ? ? return
# 表示的是將n-1的盤子從a柱子上面移到b柱子上面去
? ? move(n-1, a, c, b)
# 輸出最下面個盤子移從a移到c的路徑
? ? print a, '-->', c
# 將b柱子上面的n-1個盤子移動到c柱子上面
? ? move(n-1, b, a, c)
move(4, 'A', 'B', 'C')