2015-02-16 4 views
3

У меня проблема со следующим кодом.попробуйте исключить синтаксическую ошибку

try: 1+1 
except Exception as exception: pass 
1+1 
try: 2+2 
except Exception as exception: pass 

В результате я получаю в строке является

... ... File "<stdin>", line 3 
    1+1 
    ^
SyntaxError: invalid syntax 
>>> ... ... ... 4 

Однако следующий код выполняется без ошибок.

try: 1+1 
except Exception as exception: pass 

try: 2+2 
except Exception as exception: pass 

Мои sys.version_info является:

sys.version_info(major=2, minor=7, micro=3, releaselevel='final', serial=0) 

Почему я получаю ошибку синтаксиса?

ответ

5

При использовании интерактивной подсказки должна быть пустая строка между блоком (например, /except) и следующей независимой командой. Это только в REPL, при запуске файла .py это необязательно.

+0

ooh, спасибо. Никогда не слышал этого. – Usobi

+0

@Usobi в основном, когда вы находитесь в REPL, а приглашение - '...' вместо '>>>', вы все еще внутри блока. – MattDMo

Смежные вопросы