python_函数相关的各种参数定义和传递

导读:本篇文章讲解 python_函数相关的各种参数定义和传递,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

一、函数的创建

如图所示
在这里插入图片描述

二、函数的参数传递

函数调用的参数传递
位置实参:
根据形式参数对应的位置进行实际参数的传递
在这里插入图片描述
关键字实参
根据形式参数名称进行实际参数传递

在这里插入图片描述
在这里插入图片描述

结论:
如果是不可变对象,在函数体的修改不会影响到实际参数的值,arg1的修改为100,不会影响到n1的值
如果是可变对象,在函数体内的修改回影响到实际参数的值,arg2的修改,append(10),回影响到n2的值

三、函数的参数定义:

1、函数定义默认值参数
函数定义时,给形式参数设置默认值,只有与默认值不符合的时候才需要传递实参。

例如:
在这里插入图片描述
只传一个参数,b采用默认值
在这里插入图片描述
传2个参数,2将默认值10替换
2、个数可变的位置形式参数
-定义函数时,可能无法事先确定传递的位置实参的个数时,使用可变的位置形式参数
-使用*定义个数可变的位置参数
-结果为一个元组
在这里插入图片描述
3、个数可变的关键字形式参数
-定义函数时,无法事先确定传递的关键字实参的个数时,使用可变的关键字形参
-使用**定义个数可变的关键字形参
-结果为一个字典
在这里插入图片描述
4、错误的位置形式参数定义、错误的关键字形式参数定义

def fun2(*args,*a):
pass
以上代码,程序会报错,个数可变的位置参数,只能为1个


def fun2(**args,**a):
pass
以上代码,程序会报错,个数可变的关键字参数,只能为1个

在一个函数的定义过程中,既有个数可变的关键字形式参数,也有个数可变的位置参数,
要求个数可变的位置参数,放在个数可变的关键字参数之前

def fun(*args,**kwargs):
pass

四、函数的调用

在这里插入图片描述
在函数调用时,将列表(元组、集合)中的每一个元素都转换为位置实参传入;
在函数调用时,将字典中的键值对都转化为关键字实参传入;
例题:
在这里插入图片描述
需求:c和d只能采用关键字实参传递
在这里插入图片描述
从✳号之后的参数,在函数调用时,只能采用关键字参数传递,将*称为关键字警察

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/74405.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!