溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python中怎么向函數(shù)傳遞列表

發(fā)布時(shí)間:2023-03-31 14:53:14 來(lái)源:億速云 閱讀:76 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“Python中怎么向函數(shù)傳遞列表”,在日常操作中,相信很多人在Python中怎么向函數(shù)傳遞列表問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Python中怎么向函數(shù)傳遞列表”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

把列表傳遞給函數(shù)后, 函數(shù)就能直接訪問(wèn)列表中的內(nèi)容咯。

假設(shè)有一組專家,我們想邀請(qǐng)他們參加研討會(huì)。

def send_invitation(experts):
    '''發(fā)送邀請(qǐng)函'''
    for expert in experts:
        print(expert + ',您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)...')

experts = ['小明', '小紅']
send_invitation(experts)

運(yùn)行結(jié)果:

小明,您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)…

黃莉莉,您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)…

1 修改列表

列表參數(shù)傳遞給函數(shù)后, 函數(shù)就可以對(duì)其進(jìn)行修改。

注意:在函數(shù)中對(duì)列表所進(jìn)行的任何修改都是永久性的。

def send_invitation(experts, informed):
    '''發(fā)送邀請(qǐng)函,并移動(dòng)列表數(shù)據(jù)到【已通知】列表'''
    while experts:
        expert = experts.pop()
        print(expert + ',您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)...')
        informed.append(expert)

experts = ['小明', '小紅']  # 專家列表
informed = []  # 已通知人員列表
print('執(zhí)行前:experts=' + str(experts) + ',informed=' + str(informed))
send_invitation(experts, informed)
print('執(zhí)行后:experts=' + str(experts) + ',informed=' + str(informed))

運(yùn)行結(jié)果:

執(zhí)行前:experts=['小明', '小紅'],informed=[]

小紅,您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)...

小明,您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)...

執(zhí)行后:experts=[],informed=['小紅', '小明']

即使沒有注釋,那些具有描述性的函數(shù)名也能清晰地表達(dá)出函數(shù)所做的工作。
我們也可以在一個(gè)函數(shù)中調(diào)用另一個(gè)函數(shù), 這樣有助于將復(fù)雜的任務(wù)分解為一系列的步驟,讓程序變得更具可讀性。

2 只讀列表

有時(shí)候,我們并不想讓函數(shù)修改傳遞進(jìn)去的列表,

這時(shí)我們可以向函數(shù)傳遞列表的副本:

experts = ['小明', '小紅']  # 專家列表
informed = []  # 已通知人員列表
print('執(zhí)行前:experts=' + str(experts) + ',informed=' + str(informed))
send_invitation(experts[:], informed)
print('執(zhí)行后:experts=' + str(experts) + ',informed=' + str(informed))

運(yùn)行結(jié)果:

執(zhí)行前:experts=['小明', '小紅'],informed=[]

小紅,您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)...

小明,您好,現(xiàn)邀請(qǐng)您參加 XX 研討會(huì)...

執(zhí)行后:experts=['小明', '小紅'],informed=['小紅', '小明']

雖然向函數(shù)傳遞列表的副本可以保留原始列表的內(nèi)容,

但除非有充分的理由需要這樣做。

因?yàn)樽尯瘮?shù)使用傳遞進(jìn)行的列表可以避免花時(shí)間

在內(nèi)存中創(chuàng)建副本,從而提高性能,這在處理大數(shù)據(jù)列表時(shí)尤其需要注意。

到此,關(guān)于“Python中怎么向函數(shù)傳遞列表”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI