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)

在这里插入图片描述

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

总结

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

相关文章

  • Python3.5局部变量与全局变量作用域实例分析

    Python3.5局部变量与全局变量作用域实例分析

    这篇文章主要介绍了Python3.5局部变量与全局变量作用域,结合实例形式分析了Python3.5局部变量与全局变量的定义、作用域及相关操作注意事项,需要的朋友可以参考下
    2019-04-04
  • Python实现身份证前六位地区码对照表文件

    Python实现身份证前六位地区码对照表文件

    这篇文章主要为大家详细介绍了如何利用Python实现身份证前六位地区码对照表文件,文中的示例代码讲解详细,感兴趣的可以了解一下
    2022-12-12
  • 利用Python对文件夹下图片数据进行批量改名的代码实例

    利用Python对文件夹下图片数据进行批量改名的代码实例

    今天小编就为大家分享一篇关于利用Python对文件夹下图片数据进行批量改名的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Python自动化测试selenium指定截图文件名的方法

    Python自动化测试selenium指定截图文件名的方法

    这篇文章主要介绍了Python自动化测试selenium指定截图文件名方法,Selenium 支持 Web 浏览器的自动化,它提供一套测试函数,用于支持 Web 自动化测试,下文基于python实现指定截图文件名方法,需要的小伙伴可以参考一下
    2025-02-02
  • pytorch实现线性回归以及多元回归

    pytorch实现线性回归以及多元回归

    这篇文章主要为大家详细介绍了pytorch实现线性回归以及多元回归,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • 使用grappelli为django admin后台添加模板

    使用grappelli为django admin后台添加模板

    本文介绍了一款非常流行的Django模板系统--grappelli,以及如何给Django的admin后台添加模板,非常的实用,这里推荐给大家。
    2014-11-11
  • python根据出生日期返回年龄的方法

    python根据出生日期返回年龄的方法

    这篇文章主要介绍了python根据出生日期返回年龄的方法,实例分析了Python时间操作的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-03-03
  • Django程序的优化技巧

    Django程序的优化技巧

    如果你的Python程序或Django项目运行速度慢,先别急着怪Python或Django。其实程序运行效率是可以通过提升硬件水平、架构和数据库优化和改进算法来大大提升的。今天大江哥将分享一些主要Django性能优化手段,完全可以让你的Django程序跑得飞快。
    2021-04-04
  • python批量修改图片尺寸,并保存指定路径的实现方法

    python批量修改图片尺寸,并保存指定路径的实现方法

    今天小编就为大家分享一篇python批量修改图片尺寸,并保存指定路径的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python多线程编程之多线程加锁操作示例

    Python多线程编程之多线程加锁操作示例

    这篇文章主要介绍了Python多线程编程之多线程加锁操作,涉及Python线程创建、加锁、释放锁等相关操作技巧,需要的朋友可以参考下
    2018-09-09

最新评论