日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python函數(shù)中參數(shù)帶星號指的是什么意思-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!

在回民等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計 網(wǎng)站設(shè)計制作按需策劃,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,網(wǎng)絡(luò)營銷推廣,外貿(mào)營銷網(wǎng)站建設(shè),回民網(wǎng)站建設(shè)費(fèi)用合理。

小編給大家分享一下Python函數(shù)中參數(shù)帶星號指的是什么意思,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

函數(shù)的參數(shù)使用除了常規(guī)的位置參數(shù)和關(guān)鍵字參數(shù)外,還支持可變個數(shù)的函數(shù)參數(shù),這種支持可變個數(shù)的參數(shù)方法稱為參數(shù)收集,對應(yīng)的參數(shù)稱為收集參數(shù)。

一、參數(shù)收集的定義

Python的函數(shù)支持可變不定數(shù)量的參數(shù)模式,這種將不定數(shù)量實(shí)參在調(diào)用時傳遞給函數(shù),函數(shù)將其識別并保存到指定形參的過程稱為參數(shù)收集:

1、帶一個星號的參數(shù)收集模式

這種模式是在函數(shù)定義時在某個形參前面加一個星號,調(diào)用時按位置匹配不帶星號的形參和實(shí)參,多余的實(shí)參都將作為一個元組的元素保存到星號對應(yīng)的形參中,該星號后的形參就稱為收集參數(shù)。

這種模式的參數(shù)收集過程與前面介紹的序列解包類似,只是序列解包是將序列中多出的部分存放到星號后面的列表變量,而函數(shù)收集是將多出的參數(shù)存放到收集參數(shù)對應(yīng)的元組變量。這種模式的參數(shù)收集與序列解包類似,收集參數(shù)最好是最后一個形參,但可以出現(xiàn)在函數(shù)參數(shù)的任何位置,只是此時該參數(shù)后面的參數(shù)在調(diào)用時必須用關(guān)鍵字參數(shù)模式傳值,否則這些實(shí)參值都將作為收集參數(shù)的一部分。

舉例:我們來實(shí)現(xiàn)一個計算函數(shù),其終極目標(biāo)是輸入一串不限數(shù)量的數(shù)字,然后調(diào)用對應(yīng)的運(yùn)算符進(jìn)行連續(xù)運(yùn)算(如連加、連減、連乘等)。為了突出重點(diǎn),我們在最初的例子只是定義這個函數(shù)并輸出參數(shù)值,以來驗(yàn)證上面相關(guān)描述對于形參和實(shí)參的取值方法。后面章節(jié)再來完整實(shí)現(xiàn)該函數(shù)。

函數(shù)定義:

\>>> def cal(number1,number2=None,*numbers,calmethod='$'):

    print('number1=',number1,',number2=',number2,',numbers=',numbers,', calmethod=',calmethod)

函數(shù)調(diào)用執(zhí)行:

\>>> cal(1,'+')

number1= 1 ,number2= + ,numbers= () , calmethod= $

\>>> cal(1,2,'+')

number1= 1 ,number2= 2 ,numbers= ('+',) , calmethod= $

\>>> cal(1,2,3,'+')

number1= 1 ,number2= 2 ,numbers= (3, '+') , calmethod= $

\>>> cal(1,2,3,4,'+')

number1= 1 ,number2= 2 ,numbers= (3, 4, '+') , calmethod= $

\>>> cal(1,calmethod='+')

number1= 1 ,number2= None ,numbers= () , calmethod= +

\>>> cal(1,2,calmethod='+')

number1= 1 ,number2= 2 ,numbers= () , calmethod= +

\>>> cal(1,2,3,calmethod='+')

number1= 1 ,number2= 2 ,numbers= (3,) , calmethod= +

\>>> cal(1,2,3,4,calmethod='+')

number1= 1 ,number2= 2 ,numbers= (3, 4) , calmethod= +

\>>>

執(zhí)行截圖如下:

Python函數(shù)中參數(shù)帶星號指的是什么意思

2、帶兩個星號的參數(shù)收集模式

第一種模式的收集參數(shù)不能收集關(guān)鍵字參數(shù)傳遞的實(shí)參,要收集關(guān)鍵字參數(shù)傳遞的實(shí)參,需要在收集參數(shù)前使用兩個星號,此時收集參數(shù)對應(yīng)的是一個字典而不是元組。

此種模式的收集參數(shù)必須放在函數(shù)的最后一個,這是因?yàn)殛P(guān)鍵字參數(shù)的函數(shù)參數(shù)之后不允許出現(xiàn)非關(guān)鍵字參數(shù)。此種情況的關(guān)鍵字參數(shù)的參數(shù)名,并不是上節(jié)內(nèi)容介紹的函數(shù)定義中的關(guān)鍵字參數(shù)名,而是在實(shí)參調(diào)用時采用關(guān)鍵字參數(shù)形式傳遞的不定數(shù)量的參數(shù)。 兩種模式的收集參數(shù)可以混用。

\>>> def cal(calmethod='+',*topnopers,**lastnopers):

print('運(yùn)算符=',calmethod,',前幾個運(yùn)算參數(shù)為=',topnopers,',最后幾個運(yùn)算參數(shù)=',lastnopers)

\>>> cal('+',1,2,3,4,n5=5,n6=6,n7=7)

運(yùn)算符= + ,前幾個運(yùn)算參數(shù)為= (1, 2, 3, 4) ,最后幾個運(yùn)算參數(shù)= {'n5': 5, 'n6': 6, 'n7': 7}

以上是Python函數(shù)中參數(shù)帶星號指的是什么意思的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!


本文標(biāo)題:Python函數(shù)中參數(shù)帶星號指的是什么意思-創(chuàng)新互聯(lián)
文章分享:http://www.dlmjj.cn/article/jcdei.html