標籤:字串 解壓 strong ide 逗號 分析 class UNC 調用
return關鍵字
沒有傳回值
返回一個值
返回多個值
1.沒有傳回值
----不寫return的情況下,會預設返回一個None:下面的函數,就沒有寫return,這就是沒有傳回值的一種情況。
#函數定義def mylen(): """計算s1的長度""" s1 = "hello world" length = 0 for i in s1: length = length+1 print(length)#函數調用str_len = mylen()#因為沒有傳回值,此時的str_len為Noneprint(‘str_len : %s‘%str_len)
-----唯寫return,後面不寫其他內容,也會返回None,既然沒有要返回的值,完全可以不寫return,為什麼還要寫個return呢?這裡我們要說一下return的其他用法,就是一旦遇到return,結束整個函數
def ret_demo(): print(111) return print(222)ret = ret_demo()print(ret)
------return None:和上面的兩種情況一樣,我們一般不這樣寫
def ret_demo(): print(111) return None print(222)ret = ret_demo()print(ret)
return none
2.返回一個值
只需在return後面寫上要返回的內容即可
#函數定義def mylen(): """計算s1的長度""" s1 = "hello world" length = 0 for i in s1: length = length+1 return length#函數調用str_len = mylen()print(‘str_len : %s‘%str_len)
返回一個值
3.返回多個值
---可以返回任意多個、任意資料類型的值,用一個值接收
def func1(): return 1,2,3,4def func2(): return 1,(1,2),[3,4],{‘name‘:‘nancy‘}l1= func1()l2 = func2()print(l1)#(1, 2, 3, 4)print(l2)#(1, (1, 2), [3, 4], {‘name‘: ‘nancy‘})返回多個值
---返回任意多個、任意資料類型的值,用多個值接收
def func1(): return 1,2,3,4def func2(): return 1,(1,2),[3,4],{‘name‘:‘nancy‘}l1= func1()a,b,c,d = func2()print(l1)#(1, 2, 3, 4)print(a,b,c,d)#1 (1, 2) [3, 4] {‘name‘: ‘nancy‘}用多個值接收
----原因分析
>>> 1,2 #python中把用逗號分割的多個值就認為是一個元組。(1, 2)>>> 1,2,3,4(1, 2, 3, 4)>>> (1,2,3,4)(1, 2, 3, 4)#序列解壓一>>> a,b,c,d = (1,2,3,4)>>> a1>>> b2>>> c3>>> d4#序列解壓二>>> a,_,_,d=(1,2,3,4)>>> a1>>> d4>>> a,*_=(1,2,3,4)>>> *_,d=(1,2,3,4)>>> a1>>> d4#也適用於字串、列表、字典、集合>>> a,b = {‘name‘:‘eva‘,‘age‘:18} >>> a‘name‘>>> b‘age‘View Code
python之路——函數傳回值return