我正在写一个计算器,但由于某种原因,它告诉我的我的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