2011-02-01 61 views
2

在MATLAB中,您有能力返回元組並將其賦值給Python中的元組。在MATLAB中,如果一個函數返回一個你不想分配給任何東西的值,你可以將它分配給特殊變量~。例如,假設一個函數f()返回一個元組(1, 2),則:Python中沒有寫入變量

~, b = f() 

分配2b1不了了之。

在Python中是否有與此相當的內容?我知道我可能只是這樣做:

a, b = f() 

而忽略a的價值,但我寧願分配跳到a乾脆。重寫函數f()不是一個選項。

我很抱歉,如果我的Python術語是錯誤的。

+0

這兩種解決方案都不錯,我會花一些時間來決定我想要什麼。感謝您的快速回復:) – 2011-02-01 17:16:39

+0

對a的賦值非常簡單。通過解決不使用a的問題,你並不是真的保存任何東西。 – Falmarri 2011-02-01 22:18:23

回答

13

Python中常見的用法是爲此使用_

但是這不一定是個好主意,因爲這個變量也被用在交互式解釋器中,用於最後的結果,並且分配給它會停止這個有用的功能。

還有_有時用於字符串翻譯,例如,與gettext

+0

+1只是寫相同的答案:)。 – utdemir 2011-02-01 17:01:21

10

或者你總是可以只返回元組的一部分,你有興趣:

b = f()[1]