日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python学习之路-12 (递归)

發布時間:2025/7/14 python 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python学习之路-12 (递归) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

所謂遞歸其實就是函數本身調用函數,直到滿足指定條件之后一層層退出函數, 例如

從前有座山,山里有座廟,廟里有個老和尚,正在給小和尚講故事呢!故事是什么呢?“從前有座山,山里有座廟,廟里有個老和尚,正在給小和尚講故事呢!故事是什么呢?‘從前有座山,山里有座廟,廟里有個老和尚,正在給小和尚講故事呢!故事是什么呢?……’”

  • 利用函數編寫一個斐波那契數列

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368

斐波那契數列就是前面給兩個數相加得到后面一個數,依次往后

代碼如下

#!/usr/bin/env python # _*_ coding: utf-8 _*_def Counter(n1, n2): if n1 > 10000: # 當要計算的值大于10000就退出 return print("Counter:", n1) # 輸出當前計算到那個值了 n3 = n1 + n2 # 第一個值加上第一個值等于第三個值 Counter(n2, n3) # 調用計數器函數,此時第一個值是調用函數傳過來的最后一個值,而第二個值是計算出來的第三個值 Counter(0, 1) # 調用計數器函數

輸出結果

/usr/bin/python3.5 /home/Guniao/Documents/PycharmProjects/blogcodes/斐波那契.py Counter0 Counter1 Counter1 Counter2 Counter3 Counter5 Counter8 Counter13 Counter21 Counter34 Counter55 Counter89 Counter144 Counter233 Counter377 Counter610 Counter987 Counter1597 Counter2584 Counter4181 Counter6765 Process finished with exit code 0
  • 利用遞歸獲取斐波那契數列中的第10個數,并將該值返回給調用者

代碼:

#!/usr/bin/env python # _*_ coding: utf-8 _*_def Counter(Index, Start, End): print("第%d次計算,第一個數字是%d,第二個數字是%d" % (Index, Start, End)) if Index == 10: # 如果要計算的值是10就退出 return Start N = Start + End # N等于第一個數加上第二個數 Number = Counter(Index + 1, End, N) # 繼續調用計數器函數,End相當與傳給函數的第一個數,N是傳給函數的第二個數 return Number result = Counter(1, 0, 1) print("得出的數字是:", result)

輸出結果

/usr/bin/python3.5 /home/Guniao/Documents/PycharmProjects/blogcodes/遞歸.py 1次計算,第一個數字是0,第二個數字是1 2次計算,第一個數字是1,第二個數字是1 3次計算,第一個數字是1,第二個數字是2 4次計算,第一個數字是2,第二個數字是3 5次計算,第一個數字是3,第二個數字是5 6次計算,第一個數字是5,第二個數字是8 7次計算,第一個數字是8,第二個數字是13 8次計算,第一個數字是13,第二個數字是21 9次計算,第一個數字是21,第二個數字是34 10次計算,第一個數字是34,第二個數字是55 得出的數字是: 34 Process finished with exit code 0

轉載于:https://www.cnblogs.com/sjie0224/articles/7562546.html

總結

以上是生活随笔為你收集整理的Python学习之路-12 (递归)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。