详解python中*号的用法
1、表示乘号
2、表示倍数,例如:
defT(msg,time=1): print((msg+'')*time) T('hi',3)
打印结果(打印3次):
hihihi
3、单个*(1)、如:*parameter是用来接受任意多个参数并将其放在一个元组中。
>>>defdemo(*p): print(p) >>>demo(1,2,3) (1,2,3)
(2)、函数在调用多个参数时,在列表、元组、集合、字典及其他可迭代对象作为实参,并在前面加*
如*(1,2,3)解释器将自动进行解包然后传递给多个单变量参数(参数个数要对应相等)。
>>>defd(a,b,c): print(a,b,c) >>>d(1,2,3) 123 >>>a=[1,2,3] >>>b=[1,2,3] >>>c=[1,2,3] >>>d(a,b,c) [1,2,3][1,2,3][1,2,3] >>>d(*a) 1 123
提示:序列解包要在关键参数和**参数之前进行处理
4、两个**如:**parameter用于接收类似于关键参数一样赋值的形式的多个实参放入字典中(即把该函数的参数转换为字典)。
>>>defdemo(**p): foriinp.items(): print(i) >>>demo(x=1,y=2) (‘x',1) (‘y',2)
知识点扩展:python中星号(*)和双星号(**)的用法
第一种情况:用在两表达式的中间,*表示乘法,**表示取幂,如:
>>>2*5 10 >>>2**7 128
第二种情况:用在变量的前面。
1,向函数传递参数,将变量中可迭代对象的元素拆解出来,作为独立的参数第传给函数,如:
>>>a=[1,2,3,4] >>>print(*a,sep='\n') >>>print(a[0],a[1],a[2],a[3],sep='\n') >>>
对于**,变量为字典,将其拆解出来,单独传给函数。如:
>>>dic={'a':1,'b':2,'c':3} >>>string='{a}-{b}-{c}'.format(**dic) >>>string '1-2-3' >>>
2,在函数定义中使用,收集参数。将参数捕捉到一个元组中,如:
>>>defsum(*num): returnnum >>>sum(1,3,5,7) (1,3,5,7) >>>
该用法允许我们创建自己的函数时,可以接收任意数量的参数。
双星号可以将参数捕捉到字典中,如:
>>>defpack(**dic): returndic >>>pack(a=1,b=2,c=3) {'a':1,'b':2,'c':3} >>>
总结
以上所述是小编给大家介绍的python中*号的用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。