Python函數(shù)返回多個(gè)值的方法

如果程序需要有多個(gè)返回值,則既可將多個(gè)值包裝成列表之后返回,也可直接返回多個(gè)值。如果?Python?函數(shù)直接返回多個(gè)值,Python 會(huì)自動(dòng)將多個(gè)返回值封裝成元組。

如下程序示范了函數(shù)直接返回多個(gè)值的情形:

def?sum_and_avg(list):

sum?=?0

count?=?0

for?e?in?list:

#?如果元素e是數(shù)值

if?isinstance(e,?int)?or?isinstance(e,?float):

count?+=?1

sum?+=?e

return?sum,?sum?/?count

my_list?=?[20,?15,?2.8,?'a',?35,?5.9,?-1.8]

#?獲取sum_and_avg函數(shù)返回的多個(gè)值,多個(gè)返回值被封裝成元組

tp?=?sum_and_avg(my_list)?#①

print(tp)

上面程序中的第 9 行代碼返回了多個(gè)值,當(dāng) ① 號代碼調(diào)用該函數(shù)時(shí),該函數(shù)返回的多個(gè)值將會(huì)被自動(dòng)封裝成元組,因此程序看到 tp 是一個(gè)包含兩個(gè)元素(由于被調(diào)用函數(shù)返回了兩個(gè)值)的元組。

此外,也可使用 Python 提供的序列解包功能,直接使用多個(gè)變量接收函數(shù)返回的多個(gè)值。例如如下代碼:

#?使用序列解包來獲取多個(gè)返回值

s,?avg?=?sum_and_avg(my_list)?#②

print(s)

print(avg)

上面程序中的 ② 號代碼直接使用兩個(gè)變量來接收 sum_and_avg() 函數(shù)返回的兩個(gè)值,這就是利用了 Python 提供的序列解包功能。

Python函數(shù)返回多個(gè)值的方法-Python學(xué)習(xí)網(wǎng)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • http://python.jobbole.com/85231/ 關(guān)于專業(yè)技能寫完項(xiàng)目接著寫寫一名3年工作經(jīng)驗(yàn)的J...
    燕京博士閱讀 7,804評論 1 118
  • 寫在前面的話 代碼中的# > 表示的是輸出結(jié)果 輸入 使用input()函數(shù) 用法 注意input函數(shù)輸出的均是字...
    FlyingLittlePG閱讀 3,223評論 0 9
  • Lua 5.1 參考手冊 by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 14,256評論 0 38
  • Python 是一種相當(dāng)高級的語言,通過 Python 解釋器把符合語法的程序代碼轉(zhuǎn)換成 CPU 能夠執(zhí)行的機(jī)器碼...
    Python程序媛閱讀 2,039評論 0 3
  • 又說中秋節(jié)了,我昨天買了一袋月餅,就是童年時(shí)代的那種老月餅 ,拿起月餅我細(xì)細(xì)品味著那種古老的風(fēng)味,唉 時(shí)間過的如此...
    簡單的愛720525閱讀 72評論 0 0

友情鏈接更多精彩內(nèi)容