Python 函数的递归详解

 更新时间:2021年12月13日 15:41:28   作者:钢铁男儿  
这篇文章主要为大家介绍了Python 函数的递归,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

函数调用自身的 编程技巧 称为递归。

1.1、递归函数的特点

特点:

一个函数 内部 调用自己。

函数内部可以调用其他函数,当然在函数内部也可以调用自己。

代码特点:

1)、函数内部的 代码 是相同的,只是针对 参数 不同,处理的结果不同;

2)、当 参数满足一个条件 时,函数不再执行;

这个非常重要,通常被称为递归的出口,否则 会出现死循环!

def sum_number(num):
   print(num)
    # 递归的出口,当参数满足某个条件时,不再执行函数
    if num == 1:
        return 
   # 自己调用自己
    sum_number(num - 1)

sum_number(3)

1.2 递归案例 ----- 计算数字累加

需求:

1)、定义一个函数 sum_numbers;

2)、能够接收一个 nums 的整数参数;

3)、计算 1 + 2 = num 的结果;

# 定义一个 函数 sum_numbers
# 能够接收一个 num  的整数参数
# 计算 1 + 2 + .... num的结果;
def sum_numbers(num):
   # 1.出口
    if num == 1:
        return 1
   # 数字的累加 num + 1 (1....num - 1)
    # 假设 sum_numbers 能够正确的处理 1...num - 1
    temp = sum_numbers(num - 1)
   # 两个数字的相加
    return num + temp

result = sum_numbers(2)
print(result)

在这里插入图片描述

提示:递归是一个 编程技巧,初次接触递归会高级有些吃力 在处理 不确定的循环条件时,例如:遍历整个文件目录的结构。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • Python中的socket网络模块介绍

    Python中的socket网络模块介绍

    这篇文章主要介绍了Python中的socket网络模块介绍,Python 中,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07
  • 解决pycharm运行出错,代码正确结果不显示的问题

    解决pycharm运行出错,代码正确结果不显示的问题

    今天小编就为大家分享一篇解决pycharm运行出错,代码正确结果不显示的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • python使用webbrowser浏览指定url的方法

    python使用webbrowser浏览指定url的方法

    这篇文章主要介绍了python使用webbrowser浏览指定url的方法,实例分析了Python操作webbrowser模块的技巧,非常简单实用,需要的朋友可以参考下
    2015-04-04
  • Python通过matplotlib绘制动画简单实例

    Python通过matplotlib绘制动画简单实例

    这篇文章主要介绍了Python通过matplotlib绘制动画简单实例,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • 用pycharm开发django项目示例代码

    用pycharm开发django项目示例代码

    这篇文章主要介绍了用pycharm开发django项目示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • Python 稀疏矩阵-sparse 存储和转换

    Python 稀疏矩阵-sparse 存储和转换

    这篇文章主要介绍了Python 稀疏矩阵-sparse 存储和转换的相关资料,需要的朋友可以参考下
    2017-05-05
  • python的sys.path模块路径添加方式

    python的sys.path模块路径添加方式

    这篇文章主要介绍了python的sys.path模块路径添加方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • 18个Python脚本可加速你的编码速度(提示和技巧)

    18个Python脚本可加速你的编码速度(提示和技巧)

    Python的可读性和设计简单性是其广受欢迎的两个主要原因。文中通过实例给大家介绍的很清楚,本文重点给大家分享18个Python脚本可加速你的编码速度,感兴趣的朋友一起看看吧
    2019-10-10
  • pytorch 实现在测试的时候启用dropout

    pytorch 实现在测试的时候启用dropout

    这篇文章主要介绍了pytorch 实现在测试的时候启用dropout的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • pytorch之torch_scatter.scatter_max()用法

    pytorch之torch_scatter.scatter_max()用法

    这篇文章主要介绍了pytorch之torch_scatter.scatter_max()用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09

最新评论