Python 遞歸函數返回值為 None 的解決辦法

在使用 Python 開發的過程中,避免不了會用到遞歸函數。但遞歸函數的返回值有時會出現意想不到的情況。

專注于為中小企業提供成都網站制作、網站建設服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業長寧免費做網站提供優質的服務。我們立足成都,凝聚了一批互聯網行業人才,有力地推動了近1000家企業的穩健成長,幫助中小企業通過網站建設實現規模擴充和轉變。

下面來舉一個例子:

>>> def fun(i):
...     i += 1
...     if i < 5:
...         fun(i)
...     else:
...         return i
...
>>> r = fun(0)
>>> print(r)

比如上面這段代碼,乍一看沒什么問題,但返回值并不是我們期望的 5,而是 None

>>> print(r)
None

要解決這個問題也簡單,就是在執行遞歸調用的時候,加上 return 語句。

修改之后的代碼如下:

>>> def fun(i):
...     i += 1
...     if i < 5:
...         return fun(i)
...     else:
...         return i
...
>>> r = fun(0)
>>> print(r)
5

現在輸出的結果就符合我們的預期了。

最后補充一句,如果想要了解這背后深層的原理,可以看看函數調用棧相關的資料,這里就不過多介紹了。

本文就到這里了,如果覺得有用的話歡迎點贊轉發關注,謝謝。


推薦閱讀:

  • 計算機經典書籍
  • 技術博客: 硬核后端開發技術干貨,內容包括 Python、Django、Docker、Go、Redis、ElasticSearch、Kafka、Linux 等。
  • Go 程序員: Go 學習路線圖,包括基礎專欄,進階專欄,源碼閱讀,實戰開發,面試刷題,必讀書單等一系列資源。
  • 面試題匯總: 包括 Python、Go、Redis、MySQL、Kafka、數據結構、算法、編程、網絡等各種常考題。

網頁標題:Python 遞歸函數返回值為 None 的解決辦法
文章網址:http://m.kartarina.com/article0/dsojooo.html

成都網站建設公司_創新互聯,為您提供搜索引擎優化微信小程序網站維護全網營銷推廣建站公司響應式網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站優化排名
主站蜘蛛池模板: 亚洲av无码一区二区三区网站| 色窝窝无码一区二区三区| 亚洲色偷拍另类无码专区| 亚洲熟妇无码八AV在线播放| 亚洲av中文无码乱人伦在线咪咕| 无码人妻精品一区二区三区蜜桃 | 国产在线观看无码免费视频| 无码精品人妻一区二区三区中| 无码熟妇人妻AV在线影院| 夜夜添无码一区二区三区| 亚洲av无码成人精品国产| 久久无码无码久久综合综合| 国产免费AV片无码永久免费 | 伊人久久精品无码二区麻豆| av无码国产在线看免费网站| 国产亚洲精久久久久久无码AV| 无码熟妇人妻av| 91久久精品无码一区二区毛片| 日韩a级无码免费视频| 日韩少妇无码一区二区三区| AAA级久久久精品无码片| 免费A级毛片av无码| 亚洲欧洲日产国码无码久久99| 日韩少妇无码喷潮系列一二三| 久久久国产精品无码一区二区三区| 亚洲成AV人片在线播放无码 | 18禁免费无码无遮挡不卡网站| 国产乱子伦精品无码码专区| 亚洲&#228;v永久无码精品天堂久久| 精品无码人妻一区二区三区品 | 色欲AV无码一区二区三区| 最新无码专区视频在线| 精品无码人妻一区二区三区 | 亚洲AV人无码综合在线观看| 久久精品?ⅴ无码中文字幕| 人妻无码中文字幕免费视频蜜桃| 内射无码午夜多人| 无码人妻精品一区二区蜜桃百度| 亚洲精品无码永久在线观看| 成人无码精品1区2区3区免费看| 黄A无码片内射无码视频|