2017-06-03 104 views
-1

當我在codecademy上使用python時,那裏的教程使用if():statement和else():語句。但有時它使用if():then elif():語句。我不明白你什麼時候想把它們切換出來或先用哪個。什麼時候使用if else else或python中的elif

def fruit_color(fruit): 
    if fruit == "apple": 
     return "red" 
    elif fruit == "banana": 
     return "yellow" 
    elif fruit == "pear": 
     return "green" 
+1

建議您查看文檔中的[Control Flow Tools](https://docs.python.org/3.4//tutorial/controlflow.html)。 – miradulo

+1

如果你有更多的2個可能的狀態你想檢查,很容易 –

+0

我不明白你的問題。 – melpomene

回答

-1

我們可以在沒有elif聲明的世界中生存。我們可以這樣做:

def fruit_color(fruit): 
    if fruit == "apple": 
     color = "red" 
    else: 
      if fruit == "banana": 
       color = "yellow" 
      else: 
       if fruit == "pear": 
        color = "green" 
       # ... 
        # .... 
         # ... 
        # ... 
         # ... 
          # ... ---> 
    return color 

,但它是相當不方便的嵌套不斷增加和提高---只有類型要檢查水果的數量,這可能是很大的限制。它使代碼難以遵循,而且在Python中它也意味着縮進必須不斷增加:很快,您將無法在同一屏幕寬度內看到所有代碼。

elif聲明通過允許您將else後跟一個if摺疊爲一個不需要增加嵌套的單個語句來解決此不便之處。