我正在寫一個計算器,但由於某種原因,它告訴我的我的ELIF語法是錯誤的? (使用Python 3.5)Screenshot Of the errorPython:Elif語句很奇怪
(我使用的是與蟒蛇來到了閒置的IDE)
我正在寫一個計算器,但由於某種原因,它告訴我的我的ELIF語法是錯誤的? (使用Python 3.5)Screenshot Of the errorPython:Elif語句很奇怪
(我使用的是與蟒蛇來到了閒置的IDE)
要定義if
塊和elif
塊之間的功能。你不能這樣做。
這種失敗:
if condition:
pass
def f():
pass
elif condition:
pass
解釋器不知道哪個if
聲明elif
屬於,因爲馬上elif
上面是一個函數定義。就拿函數定義了從if..elif
結構的中間:
def f():
pass
if condition:
pass
elif condition:
pass
不要使用IDLE,使用像崇高或記事本+ +和CLI親編輯器來運行程序。
而你的elif沒有縮進級別。應該是這樣的:
if a:
pass
elif b:
pass
如果你這樣做:
if a:
pass
def func():
pass
elif b:
pass
它會失敗。定義程序頂部的所有功能以及最後的程序主體。
對於這個(或者對於Python來說),Notepad ++如何比IDLE更好?我用這兩個,順便說一句,但不會考慮使用Python的Notepad ++。 –
阿好,謝謝大家 –
在'if..elif'之外寫'def'即函數 –
暴露問題的代碼應該包含在問題本身中。我們儘量避免鏈接到外部資源,因爲它們可能會過期。 –
請勿使用'eval'將字符串轉換爲['float'](https://docs.python.org/3.5/library/functions.html#float)或['int'](https: //docs.python.org/3.5/library/functions.html#int)。閱讀「[評估真的很危險](http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html)」,看看如果你繼續使用邪惡'eval'會發生什麼。 – Matthias