#前面在定義函式時,有些函式使用了return語句,有些函式沒有使用return語句,使用return語句與不使用return語句有什麼區別呢?
#由前面的章節我們知道,若定義函式時沒有使用return語句,則預設返回乙個none。要返回乙個none,可以只寫乙個return,但要返回具體的數值,就需要在return後面加上需要返回的內容。對於函式的定義來說,使用return語句可以向外提供該函式執行的一下結果;對於函式的呼叫者來說,是否可以使用函式中執行的一些操作結果,就在於函式是否使用return語句返回了對應的執行結果。
#在python中,有的函式會產生結果(如數學函式),我們稱這種函式為有返回值函式(fruitful function);有的函式執行一些動作後不返回任何值,我們稱這類函式為無返回值函式。
#當我們呼叫有返回值函式時,可以使用返回的結果做相關操作;當我們使用無返回值函式或返回none的函式時,只能得到乙個none值。
#比如定義如下函式並執行:
1#/usr/bin/python32#
!-*-conding:utf-8 -*-3#
有返回值和無返回值函式45
defnoreturn():
6print('
noreturn函式不寫return語句')
78defjustreturn():
9print('
justreturn函式只寫return,不返回具體內容')
10return
1112
defreturnval():
13 x=10
14 y=20
15 z=x+y
16print('
returnval函式寫return語句,並返回求和的結果。')
17returnz18
19print('
函式noreturn呼叫結果:
',noreturn())
20print('
函式justreturn呼叫結果:
',justreturn())
21print('
函式returnval呼叫結果:
',returnval())
#執行結果如下:
1noreturn函式不寫return語句
2函式noreturn呼叫結果: none
3justreturn函式只寫return,不返回具體內容
4函式justreturn呼叫結果: none
5returnval函式寫return語句,並返回求和的結果。
6 函式returnval呼叫結果: 30
#由執行結果看到,定義函式時不寫return或只寫乙個return語句返回的都是none。如果寫了返回具體內容,呼叫函式時就可以獲取具體內容。
無返回值 C語言高階之路 函式 返回值!
c 語言的函式可以返回陣列以外 不包括陣列指標 的任何型別.不寫明返回型別,在以前的 c 語言版本中是預設返回 int,現在 c99 c 已不支援.void 表示沒有返回值,也就無須 return 語句 如果是其他語句必須有 return 語句.在 main 函式中 只是 main 函式 若忘掉 r...
函式返回值
這裡接著探求被調函式的返回值是如何傳遞到主調函式中的,下面為c程式。add函式通過直接返回a b的,而add1函式先定義乙個區域性變數c,儲存a b的值,然後再返回c的值。其中a b可以當成乙個臨時變數,其結果是暫時存放在暫存器中的 eax 參照反匯程式設計序,可以看出函式的值並不是通過壓棧 基址定...
函式返回值
一般說來,函式中是可以進行區域性變數的返回的,不然豈不是全部要用全域性變數,如果使用了全域性變數,那還有必要進行返回嗎?那函式就沒有它存在的意義了!但是要注意了,這裡所謂的區域性變數的返回很有內涵,什麼樣的值才可以進行返回而不出錯?其實,只要遵守一句話即可 函式不能返回指向棧記憶體的指標!為什麼?因...