2015-10-26 20 views
-1

我想學Python以獲得樂趣。我在codecademy.com上做了一個在線課程,但我不知道我必須做什麼。如何比較函數內的字符串

我想比較's'參數與其他參數(字符串參數),並且返回的值應該是「對不起」。

def shut_down(s): 
    return s 
    if s == 'yes': 
     return "Shutting down" 
    elif s == 'no': 
     return "Shutdown aborted" 
    else: 
     return "Sorry" 

所以我調用該函數:

shut_down('lhagvbs') 

它總是返回「該消息您函數失敗,是的,它返回‘是’時,它應該已經回到‘關閉’」

而我認爲我的代碼不起作用。甚至沒有def函數是正確的。

請解釋爲什麼,是什麼,在哪裏,等等

對不起,我不會講/寫英語,但我希望這是可以理解的。

(這不是家庭作業)。

回答

1

您需要刪除return s因爲你是return s回國後s不管,所有的代碼是無法訪問,所以你永遠不會計算你的if/elif的,否則:

def shut_down(s): 
    if s == 'yes': 
     return "Shutting down" 
    elif s == 'no': 
     return "Shutdown aborted" 
    else: 
     return "Sorry" 

在與事實上,你可以只保留從任何函數返回一次,你也可以忘記elif和else:

def shut_down(s): 
    if s == 'yes': 
     return "Shutting down" 
    if s == 'no': 
     return "Shutdown aborted" 
    return "Sorry" 
+0

OMG。這麼容易,我不能說...... thx男人......我已經掛了4小時......哈哈......所以迴歸設置's'的價值,而不是輸入's'的地方.... THX –

+0

@MartinŠanta,是的,你只是簡單地返回每次傳遞給函數的東西,所以'return s'之後的所有東西永遠都不會到達 –