Python基础教程,第七讲,函数 作用域 传参
转眼间这也是我写的第七篇文章了,自媒体确实是个好东西,不断的鼓励我持续更新,持续的学习,最近也发现了一些问题,就是代码在公众号和其他平台排版不利于读者阅读,尤其是大鱼和头条,说实话自己写的自己都没有看下去的兴趣,所以我想试着改变一下,代码在markdown排好版以后截图在其他工具中处理注释,这样大家可以更加直观的看到每条代码甚至某个参数的作用,希望可以让读者看到图片不用过多的看无用的代码,便可以知道重点在哪里,作用是什么。
本节课将会学习如何把语句组成函数,有了自定义函数便可减少代码冗余。最后会了解一下递归的概念及应用。
学完此次课程,我能做什么?
通过此次课程的学习,我们将掌握函数定义语法,形参,实参是什么。
学习此次课程,需要多久?
15-20分钟
课程内容
先说Python定义一个函数的语法,以及如何传参?
Python 函数Python函数定义:def + 函数名 + 形参 定义函数
形参可以理解为占位使用,告诉使用者调用函数时候这里需要传一个参数。
实参是调用函数时传过去的参数。
函数可以改变实参的值吗?我们一起来试一下:
Python 函数通过输出结果看到:字符串类型实参s的值并没有发生改变
Python 函数通过输出结果看到:数值类型的实参也没有发生改变
Python函数序列类型的值被修改了。
那哪些可以被修改,哪些又不能被修改?
目前学习到的知识,字符串,数字,元组是不可变的。序列字典可以被修改。
关键字参数
目前位置,我们学习到参数都是位置参数,也就是说传入参数的顺序和形参的位置必须一一对应。
看下图:
为什么会出现关键字参数?当某个函数的参数过多时,很难准确的技术每个参数的位置,因为稍有疏忽便会传参错误。有了关键字参数则不会出现这个问题。
Python关键字参数参数默认值
Python 默认参数从上面的运行结果可以看出,函数定义时形参赋值了默认值,调用函数时有默认值的参数可以不用传参。
收集参数
用户可以给函数提供任意多的参数
Python 收集参数注意的是:参数是以元组的形式被收集。
但是上面的方法没有办法收集关键字参数,看下面的报错!
Python 关键字函数 收集那如果我们想收集不定长的关键字参数应该怎么办呢?
Python 关键字参数收集注意返回关键字参数收集返回结果为字典类型
小结
本次课程我们学习了函数的相关知识,包括定义函数的语法,形参,实参,关键字参数,以及参数收集等。
接下来学习什么?
下一课我们将学习迷人的对象。有了对象编程语言会提升一个新的高度坚持~~