2016-07-11 7 views
0

次のコードを選択してeclipseで "Run selected code"をクリックするとエラーになります。Python '予期せぬEOFの解析中' eclipse pydev選択されたコードの実行

class abc(object): 
    def __init__(self): 
     print 'base' 

    def run(self): 
     print 'run' 

エラーメッセージ:私は2つの機能の間のスペースを削除する場合

class abc(object): 
    def __init__(self): 
     print 'base' 

    def run(self): 
     print 'run' 
    File "<ipython-input-22-8e1ec627fd90>", line 1 
    def run(self): 
       ^
SyntaxError: unexpected EOF while parsing 

run 

しかし、それは[OK]を実行します(下記参照)、これは、PyDevはバグでしょうか?どのように私はこの問題に来ることができますか?

class abc(object): 
    def __init__(self): 
     print 'base'  
    def run(self): 
     print 'run' 

バージョン:
のEclipse 4.4.2
LiClipse 2.0.0.201504092214
Subclipseの(必須)1.10.13

答えて

1

私は何を見ていることに、対話型コンソールを使用した結果だと思いますコードを実行してください(例:http://www.pydev.org/manual_adv_interactive_console.html)。

問題は、そのアクションを通じてコードをコンソールに送信するとコードに対して編集を行わず、コンソールが0幅の行を見るとPythonブロックが終了する。

ので、そのためのいくつかの回避策があります。

  1. は、あなたのブロック(すなわちは:0ではなく、幅のラインのブロックのインデントにスペースを残して)右トリミングしないでください。

  2. コードの一部だけを実行したくない場合は、すべてのコードの選択を解除し、Ctrl + Alt + Enterを押してファイル全体を実行します。

  3. コードの選択を解除して、最初の行に移動し、F2を使用してコンソールに内容を送信します(F2は現在の行を送信し、内容を含む次の行にカーソルを移動し、インデントは、コンソールに送るブロックを簡単に選択する必要があります)。

  4. 対話型コンソールを使用せず、F9でプレーン・ランを実行しないでください(この場合、新しい非対話型コンソールで起動されるため、シンボルは後で検査に使用できません)。

  5. TDD(テスト駆動型開発)を使用している場合、Ctrl + F9(詳細はhttp://www.pydev.org/manual_adv_pyunit.htmlを参照)でテストコードを実行します。このモードでは、対話型コンソールは使用しません。

+0

ありがとうございます。私は答えを感謝します。 – user97662

関連する問題