Python 函數(shù)的遞歸詳解
函數(shù)調用自身的 編程技巧 稱為遞歸。
1.1、遞歸函數(shù)的特點
特點:
一個函數(shù) 內部 調用自己。
函數(shù)內部可以調用其他函數(shù),當然在函數(shù)內部也可以調用自己。
代碼特點:
1)、函數(shù)內部的 代碼 是相同的,只是針對 參數(shù) 不同,處理的結果不同;
2)、當 參數(shù)滿足一個條件 時,函數(shù)不再執(zhí)行;
這個非常重要,通常被稱為遞歸的出口,否則 會出現(xiàn)死循環(huán)!
def sum_number(num):
print(num)
# 遞歸的出口,當參數(shù)滿足某個條件時,不再執(zhí)行函數(shù)
if num == 1:
return
# 自己調用自己
sum_number(num - 1)
sum_number(3)
1.2 遞歸案例 ----- 計算數(shù)字累加
需求:
1)、定義一個函數(shù) sum_numbers;
2)、能夠接收一個 nums 的整數(shù)參數(shù);
3)、計算 1 + 2 = num 的結果;
# 定義一個 函數(shù) sum_numbers
# 能夠接收一個 num 的整數(shù)參數(shù)
# 計算 1 + 2 + .... num的結果;
def sum_numbers(num):
# 1.出口
if num == 1:
return 1
# 數(shù)字的累加 num + 1 (1....num - 1)
# 假設 sum_numbers 能夠正確的處理 1...num - 1
temp = sum_numbers(num - 1)
# 兩個數(shù)字的相加
return num + temp
result = sum_numbers(2)
print(result)

提示:遞歸是一個 編程技巧,初次接觸遞歸會高級有些吃力 在處理 不確定的循環(huán)條件時,例如:遍歷整個文件目錄的結構。
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
Python實現(xiàn)身份證前六位地區(qū)碼對照表文件
這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)身份證前六位地區(qū)碼對照表文件,文中的示例代碼講解詳細,感興趣的可以了解一下2022-12-12
利用Python對文件夾下圖片數(shù)據(jù)進行批量改名的代碼實例
今天小編就為大家分享一篇關于利用Python對文件夾下圖片數(shù)據(jù)進行批量改名的代碼實例,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-02-02
使用grappelli為django admin后臺添加模板
本文介紹了一款非常流行的Django模板系統(tǒng)--grappelli,以及如何給Django的admin后臺添加模板,非常的實用,這里推薦給大家。2014-11-11
python批量修改圖片尺寸,并保存指定路徑的實現(xiàn)方法
今天小編就為大家分享一篇python批量修改圖片尺寸,并保存指定路徑的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07

