python——>函数的参数传递

本文详细介绍了Python函数的参数传递机制,包括可选参数、可变数量参数的使用,以及如何通过位置和名称传递参数。此外,还讨论了函数的返回值,包括返回多个值的可能性以及对变量的作用域的影响。对于函数内部变量的改变,提到了全局变量和局部变量的概念,并解释了如何通过`global`关键字和列表来影响函数外部的变量。最后,简要提及了指针和引用的区别。
摘要由CSDN通过智能技术生成

函数的参数传递

要点:函数可以定义可选参数,使用参数的位置或名称传递参数的值,根据函数中变量的不同作用域有不同的函数返回值方式

可选参数和可变数量参数

部分参数不一定需要调用程序输入,可以在定义函数时直接为这些参数指定默认值。当函数被调用是,如果没有传入对应的参数值,则使用函数定义时的默认值代替

在函数定义时,也可以设计可变数量参数,通过在参数前增加星号(*)实现。带有星号的可变参数只能出现在参数列表的最后。

def vfunc(a,*b):
    

参数的位置和名称传递

函数调用时,实参默认采用按照位置顺序的方式传递给函数。

为了解决上述问题,python提供了按照参数名输入实参的方式,格式如下:

result = func(x2=4, y2=5, z2=6, x1=1, y1=2, z1=3)

函数返回值

return语句用来推出函数并将程序返回到含糊被调用的位置继续执行。return语句可以同时将0个、1个或多个函数运算后的结果返回给函数被调用处的变量

函数对变量的作用

一个程序中的变量包括两类:全局变量局部变量

  • 全局变量:指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效
  • 局部变量:指在函数的内部使用的变量,仅在函数内部有效,当函数推出时变量将不存在

在想对函数的实参进行值得改变时,可以通过使用全局变量,用global作为数据类型,也可以通过列表来实现函数可以实现全局列表,而用采用global进行声明

python函数对变量的作用遵循如下原则:

  1. 简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放,如有全局同名,其值不变
  2. 简单数据类型变量在用global保留字声明后,作为全局变量使用,函数退出后该变量保留且值被函数改变
  3. 对于组合数据类型的全局变量,如果在函数内部没有被真实创建的同名变量,则函数内部可以直接使用并修改全局变量的值
  4. 如果函数内部真实创建了组合数据类型变量,无论是否有同名全局变量,函数仅对局部变量进行操作,函数退出后局部变量被释放,全局变量值不变

拓展:指针和引用

  • 指针:是保存内存地址的变量,一般出现在比较底层的程序设计语言中,如C语言。
  • 引用:是某一变量的别名,用这个名字可以对变量进行操作,如Python列表类型的引用

两者的主要区别:指针直接指向内存,说明对象已经生成,而引用只是别名,需要真实创建对象才能操作对象。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值