python中星號(*)和雙星號(**)的用法


第一種情況:用在兩表達式的中間,*表示乘法,**表示取冪,如:

>>> 2*5
10
>>> 2**7
128

  

第二種情況:用在變量的前面。

1,向函數傳遞參數,將變量中可迭代對象的元素拆解出來,作為獨立的參數第傳給函數,如:

>>> a=[1,2,3,4]
>>> print(*a,sep='\n')
1
2
3
4
>>> print(a[0],a[1],a[2],a[3],sep='\n')
1
2
3
4
>>>

  

 對於**,變量為字典,將其拆解出來,單獨傳給函數。如:

>>> dic={'a':1,'b':2,'c':3} 
>>> string='{a}-{b}-{c}'.format(**dic)	  
>>> string	  
'1-2-3'
>>> 

  

2,在函數定義中使用,收集參數。將參數捕捉到一個元組中,如:

>>> def sum(*num):
	  return num

>>> sum(1,3,5,7)	  
(1, 3, 5, 7)
>>>  

該用法允許我們創建自己的函數時,可以接收任意數量的參數。

 

雙星號可以將參數捕捉到字典中,如:

>>> def pack(**dic):
	  return dic

>>> pack(a=1,b=2,c=3)	  
{'a': 1, 'b': 2, 'c': 3}
>>> 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM