Python参数类型 上一期我们学习参数传递怎么传递 , 也了解了参数的几种类型 。
首先 , 我们再来回顾一下,形参和实参:
形参是在定义函数时定义的,放在函数名后面的圆括号里,可为空
实参是调用函数时为形参传入具体的参数值
简单总结一下,谁调用函数,谁就负责传入参数 。
好呐,本期我们来详细学习函数几种参数类型 , 大纲如下:
python函数的参数名是无意义的 , Python允许在调用函数时通过通过名字来传入参数值 。
位置参数:按照形参位置传入的参数
调用函数时 , 实参默认按位置顺序传递的 。同时实参个数也要和形参匹配
举一个小栗子
如果实参的个数与形参不匹配时,调用函数运行就会报错
Python中,形参与调用函数紧密联系在一起的 。
关键字参数:调用函数时 , 使形参名称来传递参数,形式为“形参名=实参”
关键字参数,又叫命名参数,传递时无需考虑参数位置和顺序
举一个小栗子
默认参数:定义函数时,我们可以为形参提前设置具体的值 。
在定义函数时,默认参数要放到位置等其他参数后面
在调用函数时 , 默认参数是可选的 。如果传入新值,则会覆盖默认值
举一个小栗子
注意 , 默认值不能位于位置参数前面 , 否则程序会报错误
不定长参数又名可变参数 。
不定长参数指的是可变数量的参数,分两种情况:
如果不定长参数后面,可以新增参数吗?
我们通过例子来看,会发生什么?
运行上面的程序 , Python解释器会报错
原因是,形参a已经是不定长参数,我们调用的test(2,3,4)传入的三个实参,系统自动把它们属于形参a的值,形参b 和形参c就等于没有值传入,这时候系统就认为,调用函数的对象 , 参数没有传够 。
为了解决这一报错 , python引入了 强制命名参数
规定,调用不定参数后面有跟位置参数的函数时,传入给位置参数时,必须要强制命名参进行传参 。
逆向参数收集针对的对象传入函数的实参
调用函数时 , 如果实参是元组,列表或者字典,通过在实参前面加入星号,可以自动把元素进行隔开,然后再转入给函数进行处理
举一个小栗子
本期,我们详细学习了参数几种类型,为后面我们学习函数,打好基础 。
实践是检验真理的过程,大家多动手练习练习,会有不一样的奇妙旅程~
好呐,以上是本期内容,欢迎大佬们评论区指正~
python 随手记 (4) python 函数中*(star/asterisk)和**的使用 1、函数定义时
?。褂玫ジ?* 会将所有的参数python函数参数使用 , 放入一个元组(tuple)供函数使用 。
?。褂昧礁?**将所有的关键字参数(键-值对形式)python函数参数使用,放入一个字典(dict)供函数使用 。
【python函数参数使用的简单介绍】2.函数调用时
?。趌ist,tuple,set前加一个星号会把容器中的所有元素解包(unpack)变成位置参数 。
?。赿ict前加一个星号会把字典的键变成位置参数 。
?。赿ict前加两个星号会把字典的键值对变成关键字参数 。
1、* 的具体使用 。位置参数和可变参数的灵活使用
1.1 在函数定义时候 , 将所有的位置参数放入一个元祖中
1.2在函数调用时使用* , 将list、tuple、set,解包成位置参数 。
2、**的具体使用 。关键字参数和可变参数的具体使用 。
推荐阅读
- 如何写好竞聘ppt,如何写好竞聘PPT
- 清远专注sap软件运维,清远专注sap软件运维招聘
- 剪影上传视频用什么软件,剪影如何上传视频
- 直播卖酱油话术,酱油主播是什么意思
- linux命令实现的 linux系统中命令
- 微信朋友圈视频号置顶,微信朋友圈视频置顶怎么取消
- ps毕业设计做网站界面,ps毕业设计成品图
- pg279q驱动安装,ip2780打印机驱动安装
- 动态时钟java代码 动态代码时钟 码源