欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python函數(shù)遞歸調用實現(xiàn)原理實例解析

 更新時間:2020年08月11日 08:29:41   作者:吃了好多肉  
這篇文章主要介紹了Python函數(shù)遞歸調用實現(xiàn)原理過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

函數(shù)的遞歸調用:

是函數(shù)嵌套調用的一種特殊形式

具體是指:

在調用一個函數(shù)的過程中又直接或間接地調用到了本身

# 直接調用本身
def func():
  print('我是func')
  func()

func()
# 函數(shù)會不斷的運行永遠不會結束,但Python不允許這種情況,會默認限制只能調1000次.

# 間接調用本身
def f1():
  print('我是f1')
  f2()
  
def f2():
  print('我是f1')
  f1()

f1()
# 此時也相當于直接調用本身,f1-->f2-->f1-->f2-->f1。。。同樣會不斷循環(huán)

遞歸不應該無限的調用下去,必須在滿足某種條件下結束遞歸

# 寫一個函數(shù)獲取0-9
def f1(n):
  if n == 10:
    return
  print(n)
  n += 1
  f1(n)
f1(0)
# 0 1 2 3 4 5 6 7 8 9 

遞歸的兩個階段:

1、回溯:一層一層調用下去

2、遞推:滿足某種條件,結束遞歸調用,然后一層一層返回。

遞歸的應用:

例如打印出一個嵌套多層列表內(nèi)的所有元素

li = [1,2,[3,4,[5,6,[7,8],9]]]
def func(l):
  for i in l:
    if type(i) is list:
      func(i)
    else:
      print(i)

func(li)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論