Python升级打怪(5)

链式调用:用一个函数的返回值作为另外一个函数参数

嵌套调用:一个函数在另一个函数定义里面,而调用该定义函数既可以使用在其里面的函数

在Pycharm中调试器的左下角能够看到函数之间的"调用栈"

调用栈里面描述了当前这个代码的函数之间,调用关系是什么.

每一层这个调用关系就称为"函数的栈帧",每个函数的局部变量就在栈帧里面体现的

每一层栈帧选中之后,就能看到其中的局部变量,每一个函数的局部变量就是体现在相应的栈帧中

调用函数则生成相应的局部变量;函数结束则对应的栈帧消亡了。

变量本质就是一块内存空间,每个变量就是保存在相应的栈帧中,每个栈帧保存在内存上。

函数递归:函数自己调用自己。分析递归代码时,可用1.画图2.调试器来思考,缺点就是执行过程中非常繁琐,难以理解,递归代码容易出现"栈溢出"的情况。"栈溢出"指的是调用栈3.递归代码一般都是可以转化成等价的循环代码的,并且循环的版本通常运行速度要比递归的版本更有优势(因为递归的调用需要开销时间)递归优点是代码简洁!!

在Python当中可以支持默认参数值(即函数的形参列表可以上默认参数值,但不可以放在前面或者中间,只能放在后面)

关键字传参:按照形参的名字进行传参!非常明显的告诉程序员自己的值给哪个形参,另外可以无视形参和实参的顺序。

位置参数和关键词字参数还能混着用,只不过混着用的时候要求位置参数在前面,关键词参数在后面。

关键字参数,一般也是搭配默认参数来使用的。

一个函数可以提供很多的参数来实现对这个函数的内部功能做出一些调整设定。

列表和元组:可以用一个变量表示多个数据。

列表的数据可以变;元组的数据不能变。若强行改变元组的数据,只有舍弃原来的元组重新搞新的元组。[]表示一个空列表 list()也可以表示一个空列表.

len内联函数可以传字符串、列表、元组、字典、自定义的类,本质就是Python支持动态类型

切片操作:通过下标操作一次性取出里面的第1个元素, 而通过切片则是一次可以取出一组连续的元素,相当于得到一个子列表.

: \]里面有两个数字,表示一段区间. 右边的数值表示开始区间的下标,左边的数值表示结束区间的下标,但记住是左闭右开. 在这里面可以省略边界,前边界和后边界也可以,两个边界同时省略. 省略前边界说明表示取到第1个元素到下标为最左边数字的元素,但取不到最左边的元素哦,因为左闭右开。 省略后边界说明从下标为右边数字为始的后面所有元素。 省略两个边界表示直接取整个列表。 注意\[ : \]这两个数字 不存在越界之说。例如最左边设100,但列表只有10个数据,则直接取到第10个元素,即结束了。 \[ : : \]其实还有第3个参数表示步长,步长可以为负数表示从后往前取。\[1:5:2\]表示从下标为1的元素到下标为5的元素,以步长为2开始取. 切片操作是一个高效的操作方法,进行切片的时候只是取出了原有列表中的一个部分,不涉及"数据拷贝" 遍历: 把一个可迭代对象中(例如列表、元组、range)的所有对象都依次取出来,并进行某种操作. 一般使用for循环遍历也可以使用while循环通过下标遍历.![4f6680cdfc3b4df99a6b8d1f7fce0f35.jpeg](https://file.jishuzhan.net/article/1783708607963992065/ac1e39475dd72957781bcb9a2072ea47.webp)

相关推荐
叫我:松哥3 分钟前
基于Flask的智能服装搭配推荐系统,采用协同过滤和内容过滤的混合推荐算法,支持虚拟试穿和个性化建议
人工智能·python·算法·信息可视化·flask·scikit-learn·推荐算法
春日见8 分钟前
强化学习第一讲:强化学习是什么,强化学习分类
开发语言·jvm·人工智能·python·学习·matlab·强化学习
郝学胜-神的一滴8 分钟前
文海撷英,数林建模:词袋模型之奥义与中文处理实践
人工智能·python·程序人生·ai·自然语言处理·scikit-learn
2501_941820499 分钟前
从权限失控到最小授权模型落地的互联网系统安全工程实践随笔与多语言语法思考
开发语言·python
phantom_1119 分钟前
BeeAI 框架—ReActAgent 学习
学习·ai
2501_9414043110 分钟前
面向微服务分布式限流与熔断保护的互联网系统高可用设计与多语言工程实践分享
python
叫我:松哥12 分钟前
基于机器学习的智能健身风险分析系统,整合数据可视化与人工智能算法
人工智能·后端·python·算法·机器学习·信息可视化·scikit-learn
深念Y13 分钟前
学习通下载老师没有开放下载的文档的方法
学习·pdf·word·文档·下载·学习通·开发者模式
普通网友17 分钟前
npm发布报错急救手册:快速解决2FA与令牌问题
前端·javascript·学习·面试·npm·node.js
Pyeako20 分钟前
Opencv计算机视觉--阈值处理&图像运算&图像平滑处理
人工智能·python·opencv·计算机视觉·阈值处理·图像平滑处理·图像运算