python 中参数的使用:形参实参、形参实参中*的作用、参数的混合使用

本文深入解析了Python中的参数概念,包括形参与实参的区别,*args和**kwargs的使用,以及参数混合使用的方法,帮助读者更好地理解和运用Python函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python中的参数:形参实参

形参:

形式上的参数,可以理解为数学中的x,没有实际的值,通过别人赋值后才有意义。相当于变量

实参:

实际意义上的参数,是一个世纪存在的参数,可以是字符串或者数字等。

就是在函数名中定义一个形参,然后在函数调用的时候,给函数名中的形参传递一个实际的参数,这个就是实参。这样的话执行函数时就会使用参数执行相应的操作。

def func(a):			#a是形参
     print(a)
 
 func(1)               #1是实参
#代码运行结果为:1

形参中*的作用:

def func(a, *args):			
     print(a)
     print(args)
 
 func(1,2,3,4)          
#把1传给a,把2,3,4传给*args

1、*args是可变参数,args接收的是一个元组;

2、**kw是关键字参数,kw接收的是一个字典;

3、在 lambda 表达式中使用 *和 **,lambda 表达式可以当作一个匿名函数。只要是函数都可以传参。

实参中*的作用

1、实参中的*号会获取可迭代对象的 key(索引/键值);

def func(n1, n2, n3, n4, n5):
    return n1, n2, n3, n4, n5

d = {'n1': 5, 'n2': 6, 'n3': 7, 'n4': 8, 'n5': 9}
print(func(*d))  
# 打印得到的结果为 ('n1', 'n2', 'n3', 'n4', 'n5')

由于获取的是可迭代对象的 key,所以函数的形参可以为位置参数或可变参数。

2、实参中的**会获取可迭代映射的值;

def func(n1, n2, n3, n4, n5):
    return n1, n2, n3, n4, n5

d = {'n1': 5, 'n2': 6, 'n3': 7, 'n5': 8, 'n4': 9}
print(func(**d))
# 打印得到的结果为(5, 6, 7, 9, 8)

由于获取的是可迭代对象的值,所以函数的形参只能为关键字参数,即参数的个数和名称都是固定的。

参数的混合使用:

1、位置参数和可变参数

def func(a, *args):
    print(a)
    print(args)

func(1,2,3,4)
#把1传给a,把2,3,4传给*args

2、位置参数和默认参数

def func(a, b = 10):
    print(a)
    print(b)

func(1)
#把1传给a,但是b不变

3、默认参数和可变参数混合使用,默认参数在可变参数的右侧 ,需要用关键字指定参数

def func(*args, a):
    print(args)
    print(a)
func(1,2,3,a = 10)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值