0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

return-函數(shù)的返回值是什么

汽車(chē)電子技術(shù) ? 來(lái)源:安迪python學(xué)習(xí)筆記 ? 作者:安迪python學(xué)習(xí)筆記 ? 2023-02-23 10:52 ? 次閱讀
  • 1.定義
  • 2.分類(lèi)
    1. 沒(méi)有返回值
  • 4.有1個(gè)返回值
  • 5.有多個(gè)返回值
  • 6.一個(gè)自定義函數(shù)只執(zhí)行一次return語(yǔ)句
  • 7.實(shí)操練習(xí)

1.定義

return關(guān)鍵字后接變量名或表達(dá)式可以將函數(shù)的計(jì)算結(jié)果返回到調(diào)用處。

變量或表達(dá)式等同于接收果汁、豆?jié){的杯子。

如果函數(shù)沒(méi)有返回值,return可以省略不寫(xiě)。

沒(méi)有返回值的意思是程序執(zhí)行完畢之后,不需要給調(diào)用函數(shù)處提供數(shù)據(jù)。

2.分類(lèi)

返回值分3種情況:

  1. 沒(méi)有返回值
  2. 返回1個(gè)值

如果是1個(gè)返回值,直接返回內(nèi)容本身的數(shù)據(jù)類(lèi)型。

  1. 返回多個(gè)值

如果是多個(gè)返回值,返回的數(shù)據(jù)類(lèi)型為元組。

【備注】是否需要寫(xiě)return,根據(jù)實(shí)際情況決定。

3. 沒(méi)有返回值

def menu ():
    print('''
    學(xué)生信息管理系統(tǒng)
    ====功能菜單====
    1.錄入學(xué)生信息
    2.查找學(xué)生信息
    3.刪除學(xué)生信息
    4.修改學(xué)生信息
    5.退出系統(tǒng)
    ''')
menu()

【終端輸出】

學(xué)生信息管理系統(tǒng)
    ====功能菜單====
    1.錄入學(xué)生信息
    2.查找學(xué)生信息
    3.刪除學(xué)生信息
    4.修改學(xué)生信息
    5.退出系統(tǒng)

menu [?menju?]菜單欄。

【代碼解析】

def menu ():定義了一個(gè)函數(shù),函數(shù)名為menu,menu后的括號(hào)為空,表示這個(gè)函數(shù)沒(méi)有參數(shù)。

print語(yǔ)句是自定義函數(shù)要輸出的內(nèi)容。

因?yàn)槲也恍枰瘮?shù)返回任何內(nèi)容,我要實(shí)現(xiàn)的功能是調(diào)用menu函數(shù)時(shí),輸出print語(yǔ)句中的字符即可。

因此自定義函數(shù)沒(méi)有添加參數(shù)。

4.有1個(gè)返回值

def fun (x , y):
    sum = x + y 
    return sum   
fun(2,5)

【終端輸出】

7

【代碼解析】

def fun (x,y):函數(shù)名為fun,形式參數(shù)為xy

sum = x+y自定義函數(shù)要實(shí)現(xiàn)的求和功能。

return sumreturn關(guān)鍵字加變量名sum,意思是將sum返回給函數(shù)調(diào)用處。

【查看返回值的數(shù)據(jù)類(lèi)型】

def fun (x,y):
    sum = x+y 
    return sum   
print(type(fun(2,5)))

【終端輸出】

<class 'int'>

這里返回的數(shù)據(jù)類(lèi)型為整數(shù)。

5.有多個(gè)返回值

def fun( x, y):
    sum=x+y
    mul=x*y
    return sum, mul 
fun(2,5)

【終端輸出】

(7, 10)

【代碼解析】

def fun (x,y):函數(shù)名為fun,形式參數(shù)為xy。

sum = x+y自定義函數(shù)要實(shí)現(xiàn)的求和功能。

mul = x*y自定義函數(shù)要實(shí)現(xiàn)的求積功能。

return sum, mulreturn關(guān)鍵字加變量名summul,意思是將summul返回給函數(shù)調(diào)用處。

【查看返回值的數(shù)據(jù)類(lèi)型】

def fun(x,y):
    sum=x+y
    mul=x*y
    return sum,mul
print(type(fun(2,5)))

【終端輸出】

<class 'tuple'>

當(dāng)有多個(gè)返回值的時(shí)候,返回的數(shù)據(jù)類(lèi)型默認(rèn)為元組。

6.一個(gè)自定義函數(shù)只執(zhí)行一次return語(yǔ)句

def fun(x,y):
    sum=x+y
    mul=x*y
    return sum
    return mul    
fun(2,5)

【終端輸出】

7

return語(yǔ)句和print語(yǔ)句不同,同等條件下,一個(gè)自定義函數(shù)中只執(zhí)行一次return語(yǔ)句。

上述代碼中有2個(gè)return語(yǔ)句,但程序只執(zhí)行了第一個(gè)return sum語(yǔ)句,程序終端只返回了求和的值。

執(zhí)行return的意思是程序到這里就終止了。

【體驗(yàn)代碼】

def test ( ):
    print("測(cè)試函數(shù)!")
    return
    print("此句不會(huì)被執(zhí)行!")
test( )

【終端輸出】

測(cè)試函數(shù)!

【代碼流程】

  1. test( )這是程序執(zhí)行的第1行代碼,表示調(diào)用test函數(shù)。
  2. def test ( ):程序執(zhí)行的第2行代碼,開(kāi)始執(zhí)行test函數(shù)。
  3. print("測(cè)試函數(shù)!")程序執(zhí)行的第3行代碼,輸出字符測(cè)試函數(shù)!
  4. return程序執(zhí)行的第4行代碼,執(zhí)行return后,程序就結(jié)束了。
  5. print("此句不會(huì)被執(zhí)行!")程序已經(jīng)結(jié)束,這句話(huà)不會(huì)被執(zhí)行。

7.實(shí)操練習(xí)

我們把函數(shù)理解成一個(gè)自動(dòng)售賣(mài)機(jī),那我們購(gòu)買(mǎi)到的飲料就是返回值。圖片

【目標(biāo)任務(wù)】

自定義一個(gè)函數(shù),編寫(xiě)一個(gè)自動(dòng)售賣(mài)機(jī)的小程序。

輸入 1時(shí),取貨口會(huì)得到'一瓶可樂(lè)'

輸入 2時(shí),取貨口會(huì)得到'一瓶礦泉水'

輸入 3 時(shí),取貨口會(huì)得到'一瓶果粒橙'。

輸入 4時(shí),取貨口會(huì)得到'一瓶雪碧'。

輸入其他字符時(shí),返回nothing。

【示例】

輸入

1

輸出

一瓶可樂(lè)

# 定義函數(shù)語(yǔ)法:def 函數(shù)名(參數(shù)):
# vending_machine:自動(dòng)售貨機(jī),函數(shù)名稱(chēng)
# choice 是參數(shù),記得參數(shù)后面有英文冒號(hào)
def vending_machine (choice) :
    # 條件判斷參數(shù)值,并用return 語(yǔ)句返回對(duì)應(yīng)內(nèi)容
    if choice == '1':
        # return語(yǔ)法:return +變量本身
        return '一瓶可樂(lè)!'
    elif choice == '2':
        return '一瓶礦泉水!'
    elif choice == '3':
        return '一瓶果粒橙!'
    elif choice == '4':
        return '一瓶雪碧!'
    else:
        return 'nothing!'

# input函數(shù)收集終端信息
choice = input(
    '''歡迎使用自動(dòng)售貨機(jī),輸入數(shù)字即可購(gòu)買(mǎi)對(duì)應(yīng)的飲料:\\n
    1.可樂(lè)、2.礦泉水、3.果粒橙、4.雪碧\\n你想購(gòu)買(mǎi)的是:'''
    )

# 打印檢查返回結(jié)果 
# 函數(shù)名(參數(shù))=return后的字符串
# vending_machine(choice)= return后的字符串
print('你購(gòu)買(mǎi)的是' + vending_machine(choice))

【終端輸出】

你購(gòu)買(mǎi)的是一瓶礦泉水!

vending_machine(choice)調(diào)用函數(shù)語(yǔ)句。

vending_machine為函數(shù)名。

choice是實(shí)際參數(shù),是從input函數(shù)從終端獲取到的值。

這里的調(diào)用函數(shù)語(yǔ)句在print語(yǔ)句中,和前面的字符串你購(gòu)買(mǎi)的是進(jìn)行了拼接。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    6808

    瀏覽量

    88743
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4277

    瀏覽量

    62323
  • Return
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    7589
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    C語(yǔ)言函數(shù)返回值

    當(dāng)然,C語(yǔ)言程序員中還有一種“行業(yè)潛規(guī)則”。如果定義的函數(shù)是個(gè)布爾函數(shù),也即返回值顯式的使用類(lèi)似于 bool 關(guān)鍵字定義,或者函數(shù)名類(lèi)似于 is_true(),那么顯然此時(shí)應(yīng)該遵守C語(yǔ)
    發(fā)表于 08-31 10:11 ?1631次閱讀

    C語(yǔ)言中函數(shù)返回值指向一個(gè)指針

    函數(shù)返回值類(lèi)型必須與函數(shù)體內(nèi)的返回表達(dá)式的類(lèi)型相匹配。如果類(lèi)型不匹配,編譯器會(huì)報(bào)錯(cuò)。此外,C 語(yǔ)言中的函數(shù)只能
    的頭像 發(fā)表于 04-26 11:01 ?2981次閱讀
    C語(yǔ)言中<b class='flag-5'>函數(shù)</b>的<b class='flag-5'>返回值</b>指向一個(gè)指針

    main函數(shù)返回值的認(rèn)知

    return返回的數(shù)值由程序的作者自定。返回不同的可以代表不同的含義,一般是代表出錯(cuò)的原因,傳統(tǒng)上返回0代表程序正常結(jié)束。main
    發(fā)表于 10-24 11:08

    總是提示函數(shù)缺少返回值聲明

    1; } return 2}return 3}提問(wèn):為什么while循環(huán)中明明有返回值,可以跳出while循環(huán),而扔提示函數(shù)最后缺少返回值請(qǐng)
    發(fā)表于 10-24 17:27

    關(guān)于返回值類(lèi)型為void的函數(shù)返回值

    我對(duì)C語(yǔ)言比較熟悉而嵌入式了解不多。今天和一個(gè)嵌入式開(kāi)發(fā)討論C語(yǔ)言的時(shí)候遇到一個(gè)這樣的問(wèn)題。void f(){}對(duì)于一個(gè)返回值類(lèi)型為void的函數(shù)我認(rèn)為這個(gè)函數(shù)是沒(méi)有返回值。而那個(gè)嵌入
    發(fā)表于 05-18 09:34

    利用函數(shù)參數(shù)和返回值提高嵌入式軟件質(zhì)量

    利用函數(shù)參數(shù)和返回值提高嵌入式軟件質(zhì)量  引 言   提高軟件代碼的質(zhì)量是每一個(gè)軟件設(shè)計(jì)者都必須考慮的問(wèn)題,這涉及軟件的有效性和經(jīng)濟(jì)價(jià)值?;谇?/div>
    發(fā)表于 11-07 09:48 ?757次閱讀
    利用<b class='flag-5'>函數(shù)</b>參數(shù)和<b class='flag-5'>返回值</b>提高嵌入式軟件質(zhì)量

    淺談C語(yǔ)言return語(yǔ)句和main 函數(shù)返回值

    函數(shù)中,如果碰到return 語(yǔ)句,那么程序就會(huì)返回調(diào)用該函數(shù)的下一條語(yǔ)句執(zhí)行,也就是說(shuō)跳出函數(shù)的執(zhí)行,回到原來(lái)的地方繼續(xù)執(zhí)行下去。但是如
    發(fā)表于 05-10 10:53 ?5241次閱讀

    main函數(shù)的末尾沒(méi)有return語(yǔ)句會(huì)有什么影響

    c語(yǔ)言中,如果main函數(shù)的末尾沒(méi)有return語(yǔ)句將會(huì)有什么影響?": 問(wèn)題的本質(zhì) 回答這個(gè)問(wèn)題其實(shí)只要理解一個(gè)東西就行了: 那就是帶有返回值函數(shù)請(qǐng)務(wù)必提供
    的頭像 發(fā)表于 02-20 15:32 ?5971次閱讀

    科普:Python函數(shù)默認(rèn)返回 None 的原因

    Python 有一項(xiàng)默認(rèn)的做法,很多編程語(yǔ)言都沒(méi)有——它的所有函數(shù)都會(huì)有一個(gè)返回值,不管你有沒(méi)有寫(xiě) return 語(yǔ)句。
    的頭像 發(fā)表于 08-17 11:39 ?2333次閱讀

    C語(yǔ)言函數(shù)返回1和返回0到底哪個(gè)好?

    可能會(huì)比較復(fù)雜,不同的輸入,常常產(chǎn)生不同的輸出結(jié)果。 1C語(yǔ)言函數(shù)返回值 C語(yǔ)言函數(shù)可以通過(guò)返回值表示輸出結(jié)果,例如 log() 函數(shù)
    的頭像 發(fā)表于 04-22 09:47 ?2668次閱讀

    C語(yǔ)言中return的各種用法

    設(shè)置全局變量,全局變量是定義在函數(shù)外的一個(gè)變量,其不屬于任何一個(gè)函數(shù),所以,雖然在調(diào)用函數(shù)return返回一個(gè)
    的頭像 發(fā)表于 08-13 10:47 ?4375次閱讀

    C語(yǔ)言程序開(kāi)發(fā)中關(guān)于函數(shù)返回值的問(wèn)題

    C語(yǔ)言函數(shù)可以通過(guò)返回值表示輸出結(jié)果,例如 log() 函數(shù)返回值會(huì)根據(jù)不同的輸入,返回不同的
    發(fā)表于 09-06 10:01 ?918次閱讀

    什么是函數(shù)返回值

    函數(shù)返回值函數(shù)被調(diào)用后,執(zhí)行所調(diào)用函數(shù)內(nèi)代碼后所得出的結(jié)果,并且將返回給主函數(shù)
    的頭像 發(fā)表于 04-04 17:21 ?4746次閱讀

    Python函數(shù)作為返回值

    函數(shù)作為返回值 函數(shù)除了作為代碼塊,作為接收參數(shù),還可以把函數(shù)作為結(jié)果返回。 例子: 可變參數(shù)的求和: 通常 def calc_sum (
    的頭像 發(fā)表于 09-27 17:01 ?1037次閱讀

    ARM異常返回值的合法有哪些?各返回值分別代表什么?

    ARM異常返回值的合法有哪些?各返回值分別代表什么? ARM異常返回值的合法包括:中斷(IRQ)、中止(ABORT)、未定義指令(UND
    的頭像 發(fā)表于 10-19 16:36 ?807次閱讀