詳解python中*號(hào)的用法
1、表示乘號(hào)
2、表示倍數(shù),例如:
def T(msg,time=1): print((msg+' ')*time) T('hi',3)
打印結(jié)果(打印3次):
hi hi hi
3、單個(gè) * (1)、如:*parameter是用來(lái)接受任意多個(gè)參數(shù)并將其放在一個(gè)元組中。
>>> def demo(*p): print(p) >>> demo(1,2,3) (1, 2, 3)
(2)、函數(shù)在調(diào)用多個(gè)參數(shù)時(shí),在列表、元組、集合、字典及其他可迭代對(duì)象作為實(shí)參,并在前面加 *
如 *(1,2,3)解釋器將自動(dòng)進(jìn)行解包然后傳遞給多個(gè)單變量參數(shù)(參數(shù)個(gè)數(shù)要對(duì)應(yīng)相等)。
>>> def d(a,b,c): print(a,b,c) >>> d(1,2,3) 1 2 3 >>> 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 1 2 3
提示:序列解包要在關(guān)鍵參數(shù)和 **參數(shù) 之前進(jìn)行處理
4、兩個(gè) ** 如: **parameter用于接收類似于關(guān)鍵參數(shù)一樣賦值的形式的多個(gè)實(shí)參放入字典中(即把該函數(shù)的參數(shù)轉(zhuǎn)換為字典)。
>>> def demo(**p): for i in p.items(): print(i) >>> demo(x=1,y=2) (‘x', 1) (‘y', 2)
知識(shí)點(diǎn)擴(kuò)展:python中星號(hào)(*)和雙星號(hào)(**)的用法
第一種情況:用在兩表達(dá)式的中間,*表示乘法,**表示取冪,如:
>>> 2*5 10 >>> 2**7 128
第二種情況:用在變量的前面。
1,向函數(shù)傳遞參數(shù),將變量中可迭代對(duì)象的元素拆解出來(lái),作為獨(dú)立的參數(shù)第傳給函數(shù),如:
>>> a=[1,2,3,4] >>> print(*a,sep='\n') >>> print(a[0],a[1],a[2],a[3],sep='\n') >>>
對(duì)于**,變量為字典,將其拆解出來(lái),單獨(dú)傳給函數(shù)。如:
>>> dic={'a':1,'b':2,'c':3} >>> string='{a}--{c}'.format(**dic) >>> string '1-2-3' >>>
2,在函數(shù)定義中使用,收集參數(shù)。將參數(shù)捕捉到一個(gè)元組中,如:
>>> def sum(*num): return num >>> sum(1,3,5,7) (1, 3, 5, 7) >>>
該用法允許我們創(chuàng)建自己的函數(shù)時(shí),可以接收任意數(shù)量的參數(shù)。
雙星號(hào)可以將參數(shù)捕捉到字典中,如:
>>> def pack(**dic): return dic >>> pack(a=1,b=2,c=3) {'a': 1, 'b': 2, 'c': 3} >>>
總結(jié)
以上所述是小編給大家介紹的python中*號(hào)的用法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
Anaconda安裝時(shí)默認(rèn)python版本改成其他版本的兩種方式
這篇文章主要給大家介紹了關(guān)于Anaconda安裝時(shí)默認(rèn)python版本改成其他版本的兩種方式,anaconda是一個(gè)非常好用的python發(fā)行版本,其中包含了大部分常用的庫(kù),需要的朋友可以參考下2023-10-10Python的Pillow庫(kù)進(jìn)行圖像文件處理(圖文詳解)
本文詳解的講解了使用Pillow庫(kù)進(jìn)行圖片的簡(jiǎn)單處理,使用PyCharm開發(fā)Python的詳細(xì)過(guò)程和各種第三方庫(kù)的安裝與使用。感興趣的可以了解一下2021-11-11Pyqt5實(shí)戰(zhàn)小案例之界面與邏輯分離的小計(jì)算器程序
網(wǎng)上很多PyQt5信號(hào)槽與界面分離的例子,但是真正開發(fā)起來(lái)很不方便,下面這篇文章主要給大家介紹了關(guān)于Pyqt5實(shí)戰(zhàn)小案例之界面與邏輯分離的小計(jì)算器程序,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02Python查找算法之插補(bǔ)查找算法的實(shí)現(xiàn)
這篇文章主要介紹了Python查找算法之插補(bǔ)查找算法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04Python 實(shí)現(xiàn)引用其他.py文件中的類和類的方法
下面小編就為大家分享一篇Python 實(shí)現(xiàn)引用其他.py文件中的類和類的方法,具有的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04詳解Pytorch自動(dòng)求導(dǎo)機(jī)制
自動(dòng)求導(dǎo)是一種計(jì)算梯度的技術(shù),它允許我們?cè)诙x模型時(shí)不需要手動(dòng)推導(dǎo)梯度計(jì)算公式,PyTorch 提供了自動(dòng)求導(dǎo)的功能,使得梯度的計(jì)算變得非常簡(jiǎn)單和高效,這篇文章主要介紹了Pytorch自動(dòng)求導(dǎo)機(jī)制詳解,需要的朋友可以參考下2023-07-07python實(shí)現(xiàn)輸入數(shù)字的連續(xù)加減方法
今天小編就為大家分享一篇python實(shí)現(xiàn)輸入數(shù)字的連續(xù)加減方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06