2016-05-25 32 views
0

我剛寫了這個非常簡單的Python腳本,它找到了兩個整數的總和。我只是試圖瞭解return值如何分配給變量:Python中的簡單求和程序

def add(a,b): 
    c = a + b 
    return a 
    return b 
    return c 

first_number, second_number, result = add(3,4) 

print 'first_number is ', first_number 
print 'second number is ', second_number 
print 'result is ', result 

當我嘗試運行此腳本,我得到以下幾點:

Traceback (most recent call last): 
    File "test.py", line 7, in <module> 
    first_number, second_number, result = add(3,4) 
TypeError: 'int' object is not iterable 

這是爲什麼?而且,我該如何解決這個問題?

回答

8

您的問題是return a語句停止例程並返回一個值,但主程序需要三個值。您的其他return語句永遠不會執行。

相反,只使用一個return聲明:

def add(a,b): 
    c = a + b 
    return a, b, c 
+0

縮進只意味着,當他們來到一個外後。所以當你想使用一行代碼時,你應該以正確的風格編寫它。 – Kasramvd