在python中,很多情况下会用到*,下面举一些例子来说明*的用法
1.数字计算中,*代表乘法,**代表求幂
print('2乘以3值为:%s'%(2*3)) print('2的3次方值为:%s'%(2**3))
2.在函数中,使用*args定义可变参数,**kwargs定义可变关键字参数。可变参数允许传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。关键字参数允许传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict
def foo(*args): print('可变参数') print(args) def bar(**kwargs): print('关键字参数') print(kwargs) foo(1,2,3) bar(name='lary',age=18)
3.函数调用时解包参数
numbers = [1,2,3,4,5] print(numbers) print('------') print(*numbers)
4.可迭代对象的解包
#获取第一个元素和最后一个元素 numbers = [1,2,3,4,5] first_number,*nums,last_number = numbers print(first_number,last_number) #获取第一个元素的最后一个字符,可以进行多步解包 animals = ['dog','cat','monkey','horse'] (*a1,a2),*an = animals print(a2)