欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python函數(shù)返回不定數(shù)量的值方法

 更新時間:2019年01月22日 09:54:11   作者:BlackMatrix  
今天小編就為大家分享一篇Python函數(shù)返回不定數(shù)量的值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

Python的函數(shù)是可以return多個值的,但其本質上還是返回單個值,只是利用了tuple的自動打包,將多個值打包成單個tuple返回。

使用代碼驗證:

def func_a():
 return 1, 2, 3, 4

if __name__ == '__main__':
 temp = func_a()
 print(type(temp))

運行結果,確認返回的是一個tuple,

<class 'tuple'>

稍微修改代碼:

def func_a(*args):
 return 1, 2, 3, 4

if __name__ == '__main__':
 a, b, c, d = func_a()
 print(a, b, c, d)

代碼中利用了tuple的自動解包,將tuple的值分別賦值給了a, b, c, d四個變量,實現(xiàn)返回多個值

既然知道實際上Python返回多個值的本質是返回tuple,再自動解包賦值給N個變量,那要實現(xiàn)返回任意多個值,只要手動返回一個tuple就可以了,tuple內(nèi)元素的數(shù)量可以自定:

def func_a(*args):
 return tuple(arg * 2 for arg in args)

if __name__ == '__main__':
 a, b, c, d = func_a(1, 2, 3, 4)
 print(a, b, c, d)

代碼中,將傳入的參數(shù)值 x 2后,轉換成tuple返回,再利用tuple的自動解包賦值給多個變量,從而實現(xiàn)函數(shù)返回不定數(shù)量的值。

這里需要注意,當返單個值時,不需要再手動返回一個tuple,所以修改代碼如下:

def func_a(*args):
 temp = tuple(arg * 2 for arg in args)
 return temp if len(temp) > 1 else temp[0]

if __name__ == '__main__':
 a, b, c, d = func_a(1, 2, 3, 4)
 print(a, b, c, d)
 e = func_a('Hello')
 print(e)

以上這篇Python函數(shù)返回不定數(shù)量的值方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論