2011-07-25 46 views
-3

爲什麼我無法在我的shell中運行以下行?爲什麼我不能在我的Python shell中執行這樣的代碼?

>>> try: 
...  x = int("a lot") 
... except items["error"] as e: 
...  # Same as except ValueError as e 
...  print("Couldn't convert") 

錯誤消息:

>>> try: ... x=int("a lot") File "<stdin>", line 2 x=int("a lot")<&> 
     ^
IndentationError: expected an indented block 
+0

>>>試試: ... X = INT( 「大量」) 文件 「」,2號線 X = INT( 「大量」) ^ IndentationError:預計會出現縮進塊 – Muzab

+0

您試圖使用哪個shell? –

+3

不會添加其他信息或更正作爲評論,編輯您的原始帖子。 –

回答

3

工作對我來說:

>>> items = {} 
>>> items["error"] = ValueError 
>>> try: 
...  x = int("a lot") 
... except items["error"] as e: 
...  print "Couldn't convert" 
... 
Couldn't convert 
+0

沒錯。應該插入縮進(在try和except塊中的一個選項卡),當然還有一個完整的示例,其中包含以前定義的項目var。 – Dilettant

+0

我在Mandriva Linux上安裝了Python 2.6.1。我的任何'if','while','try'語句都不會在shell中執行。感謝您的快速反應(球員) – Muzab

0

你的縮進是錯誤的。應該是:

>>> try: 
...  x = int("a lot") 
... except items["error"] as e: 
...  print("Couldn't convert") 
+0

@ ondrej ...我的縮進被錯誤地複製了..我認爲它有一些與我的版本的Python或我必須導入一些文件。我不知道。 – Muzab

相關問題