Python函數返回不定數量的值方法
Python的函數是可以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四個變量,實現返回多個值
既然知道實際上Python返回多個值的本質是返回tuple,再自動解包賦值給N個變量,那要實現返回任意多個值,只要手動返回一個tuple就可以了,tuple內元素的數量可以自定:
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)
代碼中,將傳入的參數值 x 2后,轉換成tuple返回,再利用tuple的自動解包賦值給多個變量,從而實現函數返回不定數量的值。
這里需要注意,當返單個值時,不需要再手動返回一個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函數返回不定數量的值方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
解決使用Pandas 讀取超過65536行的Excel文件問題
這篇文章主要介紹了解決使用Pandas 讀取超過65536行的Excel文件問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
Django模板標簽{% for %}循環(huán),獲取制定條數據實例
這篇文章主要介紹了Django模板標簽{% for %}循環(huán),獲取制定條數據實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
Python實現購物評論文本情感分析操作【基于中文文本挖掘庫snownlp】
這篇文章主要介紹了Python實現購物評論文本情感分析操作,結合實例形式分析了Python使用中文文本挖掘庫snownlp操作中文文本進行感情分析的相關實現技巧與注意事項,需要的朋友可以參考下2018-08-08

