1.返回值介紹
現實生活中的場景:
我給兒子10塊錢,讓他給我買包煙。這個例子中,10塊錢是我給兒子的,就相當於調用函數時傳遞到參數,讓兒子買菸這個事情最終的目標是,讓他把煙給你帶回來然後給你對麼,,,此時煙就是返回值
開發中的場景:
定義了一個函數,完成了獲取室內溫度,想一想是不是應該把這個結果給調用者,只有調用者擁有了這個返回值,才能夠根據當前的溫度做適當的調整
綜上所述:
所謂“返回值”,就是程序中函數完成一件事情後,最後給調用者的結果
2.帶有返回值的函數
想要在函數中把結果返回給調用者,需要在函數中使用return
如下示例:
def add2num(a, b):
c = a+b
return c
或者
def add2num(a, b):
return a+b
3.保存函數的返回值
在本小節剛開始的時候,說過的“買菸”的例子中,最後兒子給你煙時,你一定是從兒子手中接過來 對麼,程序也是如此,如果一個函數返回了一個數據,那麼想要用這個數據,那麼就需要保存
保存函數的返回值示例如下:
#定義函數
def add2num(a, b):
return a+b
#調用函數,順便保存函數的返回值
result = add2num(100,98)
#因爲result已經保存了add2num的返回值,所以接下來就可以使用了
print (result)
結果:
198
4.四種函數的類型
函數根據有沒有參數,有沒有返回值,可以相互組合,一共有4種
- 無參數,無返回值
- 無參數,又反悔
- 有參數,無返回值
- 有參數,有返回值
1.無參數,無返回值的函數
此類函數,不能接收參數,也沒有返回值,一般情況下,打印提示燈類似的功能,使用這類的函數
def printMenu():
print('--------------------------')
print(' xx涮涮鍋 點菜系統')
print('')
print(' 1. 羊肉涮涮鍋')
print(' 2. 牛肉涮涮鍋')
print(' 3. 豬肉涮涮鍋')
print('--------------------------')
結果:
2.無參數,有返回值的函數
此類函數,不能接收參數,但是可以返回某個數據,一般情況下,像採集數據,用此類函數
# 獲取溫度
def getTemperature():
#這裏是獲取溫度的一些處理過程
#爲了簡單起見,先模擬返回一個數據
return 24
#小編創建了一個Python學習交流羣:725638078
temperature = getTemperature()
print('當前的溫度爲:%d'%temperature)
結果:
當前的溫度爲: 24
3.有參數,無返回值的函數
此類函數,能接收參數,但不可以返回數據,一般情況下,對某些變量設置數據而不需結果時,用此類函數
4.有參數,有返回值的函數
此類函數,不僅能接收參數,還可以返回某個數據,一般情況下,像數據處理並需要結果的應用,用此類函數
# 計算1~num的累積和
def calculateNum(num):
result = 0
i = 1
while i<=num:
result = result + i
i+=1
return result
result = calculateNum(100)
print('1~100的累積和爲:%d'%result)
結果:
1~100的累積和爲: 5050
5.小總結
函數根據有沒有參數,有沒有返回值可以相互組合
定義函數時,是根據實際的功能需求來設計的,所以不同開發人員編寫的函數類型各不相同
5.在python中我們可不可以返回多個值?
>>> def divid(a, b):
... shang = a//b
... yushu = a%b
... return shang, yushu
...
>>> sh, yu = divid(5, 2)
>>> sh
5
>>> yu
1
本質是利用了元組