Python递归函数实例讲解

yipeiwu_com5年前Python基础

Python递归函数实例

1、打开Python开发工具IDLE,新建‘递归.py'文件,并写代码如下:

def digui(n):

  if n == 0 :

    print ('')

    return

  

  print ('*'*n)

  digui(n-1)

if __name__ == '__main__':

  digui(5)

这里递归打印*号,先打印后递归

2、F5运行程序,打印内容如下;

*****

****

***

**

*

3、更改一下打印和递归的 顺序,先递归后打印,代码如下:

def digui(n):

  if n == 0 :

    print ('')

    return

  digui(n-1)

  print ('*'*n)

  

if __name__ == '__main__':

  digui(5)

4、F5运行程序,打印内容如下;

*

**

***

****

*****

这是因为打印在最后,要等待执行到n==0,函数才能return。

5、再更改递归函数,递归函数带返回值,代码如下:

def digui(n):

  if n == 0 :

    return 0

  return n+digui(n-1)

  

if __name__ == '__main__':

  print (digui(5))

此函数作用从5+4+3+2+1+0累加结果。直到n==0时候返回。

6、F5运行程序,打印累加结果15

上面就是关于Python递归函数的相关知识点,感谢大家的阅读和对【听图阁-专注于Python设计】的支持。

相关文章

django foreignkey(外键)的实现

django foreignkey(外键)的实现

foreignkey是一种关联字段,将两张表进行关联的方式,我们在dodels.py里写入要生成的两张表: class Usergroup(models.Model): uid...

Python Tkinter模块 GUI 可视化实例

我就废话不多说了,直接上代码: coding:utf-8 #自带的Tkinter模块 from Tkinter import * from ScrolledText impo...

python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)

前言 最近在网上搜了许多关于pandas.DataFrame的操作说明,都是一些基础的操作,但是这些操作组合起来还是比较费时间去正确操作DataFrame,花了我挺长时间去调整BUG的。...

详解python路径拼接os.path.join()函数的用法

os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含'/',则函数会自动加上 demo1 import os Path1 = 'home'...

Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子

scapy是python写的一个功能强大的交互式数据包处理程序,可用来发送、嗅探、解析和伪造网络数据包,常常被用到网络攻击和测试中。 这里就直接用python的scapy搞。 这里是ar...