千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > python函数如何传递参数?

python函数如何传递参数?

来源:千锋教育
发布人:xqq
时间: 2023-11-08 09:58:02 1699408682

python中,函数参数由实参传递给形参的过程,是由参数传递机制来控制的。根据实际参数的类型不同,函数参数的传递方式分为值传递和引用传递(又称为地址传递)。

Python函数参数的值传递机制

所谓值传递,实际上就是将实际参数值的副本(复制品)传入函数,而参数本身不会受到任何影响。

下面程序演示了函数参数进行值传递的效果:

defswap(a,b):

#下面代码实现a、b变量的值交换

a,b=b,a

print("swap函数里,a的值是",\

a,";b的值是",b)

a=6

b=9

swap(a,b)

print("交换结束后,变量a的值是",\

a,";变量b的值是",b)

运行上面程序,将看到如下运行结果:

swap函数里,a的值是9;b的值是6

交换结束后,变量a的值是6;变量b的值是9

从上面的运行结果来看,在swap()函数里,a和b的值分别是9、6,交换结束后,变量a和b的值依然是6、9。从这个运行结果可以看出,程序中实际定义的变量a和b,并不是swap()函数里的a和b。

Python函数参数的引用传递

如果实际参数的数据类型是可变对象(列表、字典),则函数参数的传递方式将采用引用传递方式。需要注意的是,引用传递方式的底层实现,采用的依然还是值传递的方式。

下面程序示范了引用传递参数的效果:

defswap(dw):

#下面代码实现dw的a、b两个元素的值交换

dw['a'],dw['b']=dw['b'],dw['a']

print("swap函数里,a元素的值是",\

dw['a'],";b元素的值是",dw['b'])

dw={'a':6,'b':9}

swap(dw)

print("交换结束后,a元素的值是",\

dw['a'],";b元素的值是",dw['b'])

运行上面程序,将看到如下运行结果:

swap函数里,a元素的值是9;b元素的值是6

交换结束后,a元素的值是9;b元素的值是6

从上面的运行结果来看,在swap()函数里,dw字典的a、b两个元素的值被交换成功。不仅如此,当swap()函数执行结束后,主程序中dw字典的a、b两个元素的值也被交换了。

这很容易造成一种错觉,即在调用swap()函数时,传入swap()函数的就是dw字典本身,而不是它的复制品。

以上内容为大家介绍了python函数如何传递参数?希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

tags: python培训
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT