Python丟棄返回值


函數多個返回值

python的函數支持返回多個值。返回多個值時,默認以tuple的方式返回

例如,下面兩個函數的定義是完全等價的。

def f():
    return 1,2

def f():
    return (1,2)

如果將函數調用的返回值賦值給對應個數的變量,它會一一對應的賦值,這很容易理解。下面是等價的:

a, b = f()     # a=1, b=2
(a, b) = f()

如果賦值給一個變量,將會把整個元組賦值給變量。下面是等價的,a表示整個元組(1,2):

a = f()
(a) = f()

丟棄返回值

很多時候,多個返回值並非全都是所需的,這時候需要丟棄某些返回值。python有幾種方式只獲取部分返回值:

1.直接放在空上下文,不進行任何賦值,將丟棄所有返回值

# f()的返回值全丟棄
f()

2.因為返回值是元組,所以可以通過索引取得某個或某幾個返回值

a = f()[0]
b = f()[1]

3.使用下划線_

# 丟棄第二個返回值
a, _ = f()

4.使用雙下划線__或更多下划線___________

# 丟棄第二個返回值
a, __ = f()

其中第三種方式"使用下划線"不是很安全,因為下划線_在python中有多種意義。而且正好有兩種意義在某些情況下可能會產生沖突。所以,建議使用第四種方式。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM