(记录)python篇:六_ 函数2

#递归函数

#函数内部,一个函数可以调用自身本身,这个函数就是递归函数。

def num(x):  #第一步
    return num_a(n,1) #第二部
def num_a(a,b): #与第二部对应,如果此时的num_a与上一步定义的函数不对应,则代码报错。
    if a==1:    #(最后一部判断)由于a==3,所以a==1不成立,直到a==1时才返回b,循环才结束。
        return b
    return num_a(a-1,a*b)#此时循环结束,但是判断里的循环未结束。

#x等于3时

#num_a(3,1)

#num_a(2,3)

#num_a(1,6)

#返回num_a(a-1,a*b)值与上面对于num_a(a,b),a在不断减1,而b得出定义表达式的a*b相乘,直到a==1时,判断成立,return返回结束。

#所以答案为num_a(1,6),a==1,b==6

#此递归函数也和循环是等价的,但是他不依靠循环语句,只是本身咋不断调用函数,因此会发生栈溢出的问题。

学习内容来自廖俊峰的官方网站

ps:本人python不是抄袭,而是学习篇>>>写的是本人学习的笔记,记录下来方便本人以后参考。

时间: 2024-11-05 20:37:08

(记录)python篇:六_ 函数2的相关文章

(记录)python篇:六_ 函数1

函数 一:自定义函数 def num(x):        #def定义函数代码,num自定义函数的名称,(x)函数的参数,也可以是                               a,b,x),也可以定义为空         ......        #中间可以做为判断if,也可以用循环可其他之类的定义等.      return x       #返回的函数,可以是多和return a,b,x #return和print的区别: return 跳出当前循环并打印 print 打

python之路_函数实例及装饰器介绍

一.习题讲解 1.写函数,返回一个扑克牌列表,里面有52项,每一项是一个元组.例如:[('红心',2), ('草花',2), -('黑桃,'A')] def cards(): num=[] for v in range(2,11): num.append(v) num.extend(['J','Q','K','A']) type=['红心','草花','方块','黑桃'] result=[] for i in num: for j in type: result.append((j,i)) re

Python基础篇(六)

retun空值,后面的语句将不再被执行 >>> def test(): ...    print("just a test!") ...    return ...    print("will not be print") ... >>> test() just a test! 和Java类似,在传递参数时,当参数是字符串,元组时,传递的其实是拷贝,修改实际参数不会影响到形式参数.当参数是对象时,修改实际参数将会影响到形式参数.

项目记录 -- python调用回调函数

C源文件: 1 static int 2 get_callback(zpool_handle_t *zhp, void *data) 3 { 4 zprop_get_cbdata_t *cbp = (zprop_get_cbdata_t *)data; 5 char value[MAXNAMELEN]; 6 zprop_source_t srctype; 7 zprop_list_t *pl; 8 9 for (pl = cbp->cb_proplist; pl != NULL; pl = pl

ZMAN的学习笔记之Python篇:函数可变长参数

ZMAN的学习笔记之Python篇: 1.装饰器 2.函数“可变长参数” 这次来聊聊Python中函数的“可变长参数”,在实际中经常会用到哦~  一.什么是“可变长参数” “可变长参数”就是向一个函数传入不定个数的参数.比如我写一个函数:传入一个学生参加各科目考试的成绩,求平均分,如两个学生分别传入(92, 91, 88)和(88, 95),因为每个学生参加的考试个数不同,因此传入的参数个数也就不同了,遇到这种情况,我们在定义函数的时候,可以使用“可变长参数”. 二.在定义函数时使用“可变长参数

DayDayUP_Python自学记录[6]_函数学习

Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创建函数,这被叫做用户自定义函数. 定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(). 任何传入参数和自变量必须放在圆括号中间.圆括号之间可以用于定义参数. 函数的第一行语句可以选择性地使用文档字符串-用于

Python开发【第五篇】:函数

1. 函数 ??函数是组织好的,可重复使用的,用来实现单一,或相关功能的代码块. ??函数分为 Python 程序内置函数,用户自定义的函数.将代码定义为函数,有如下好处: 代码重用(某个特定功能复用) 保持代码一致性,易维护 可拓展 1.1 定义和调用函数 ??使用 def 关键字定义一个函数,后面紧跟函数名,小括号也必不可少,语法如下: def func(): 函数体 ??函数在执行时,首先将函数体加载到解释器中,但是不会运行,只有当调用函数后才会执行,函数名+小括号即可调用函数: def

python成长之路【第三篇】:函数

1.函数基础 函数是python为了代码最大程度的重用和最小化代码冗余而提供的基本程序结构. 函数是一种设计工具,它能让程序员将复杂的系统分解为可管理的部件. 函数用于将相关功能打包并参数. python中可以创建4种函数: 全局函数:定义在模块中 局部函数:嵌套于其他函数中 lambda函数:表达式 方法:与特定数据类型关联的函数,并且只能与数据类型关联一起使用 Python提供了很多内置函数. 注意:有两种方式可以查看Python的内置函数. 1.https://docs.python.or

《Python 学习手册4th》 第十六章 函数基础

''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点笔记”“本章习题” - 标题1,二级标题用- 标题2,笔记大纲标题.习题题目- 加粗,16px ''' 重点笔记 摘要 函数是Python为了代码最大程度的重用和最小化代码冗余而提供的最基本的程序结构.一. 为何使用函数 最大化的代码重用和最小化代码冗余 流程的分解 本章习题: 1. 编写函数有什么