我在Windows 7 Professional 64位计算机上的Python版本3.3 64位的Python交互式Shell IDLE中看起来似乎是缩进问题。这是我想写的简单条件流程序背后的想法:
if spam == 1:
print('Hello')
elif spam == 2:
print('Howdy')
else:
print('Greetings!")
交互式shell不允许“elif”返回同一个块(不确定我是否正确描述)作为if语句,所以最终看起来像这样:
if spam == 1:
print('Hello')
elif spam == 2:
SyntaxError: invalid syntax
if spam == 1:
print('Hello')
elif spam == 2:
SyntaxError: unindent does not match any outer indentation level
>>>
请帮助。
答案 0 :(得分:1)
交互式shell的提示>>>
确实会在视觉上占用空间,但不会将其视为代码。与包含提示的行相同的缩进级别的代码应该从提示开始的地方开始,而不是从代码开始的地方开始。
>>> if 1==1:
pass
else:
pass
>>>
如果从系统的终端启动解释器(例如cmd,PowerShell等),则块中的后续行会有不同的提示...
,从而更清晰地表示代码: / p>
>>> if 1==1:
... pass
... else:
... pass
...
>>>