0

次の関数は、コマンドラインから実行すると機能しますpython test.py

   def get_pdb(self,pdb):

        import os
        from subprocess import call

        os.chdir('./mobcal_data/PDBs/')
        call(["wget", "http://www.pdb.org/pdb/files/2kqx.pdb"])

しかし、Eclipseで実行しようとすると、次のようになりますOSError

OSError: [Errno 2] No such file or directory

Eclipse内ではなくコマンドラインからスクリプトを実行すると、なぜ機能するのかわかりません。

4

1 に答える 1

0

私は間違っているかもしれませんが、実際にはos.chdir()呼び出しからエラーが発生している可能性があると思います。

スクリプトを手動で実行するか、Eclipse を使用して実行するかによって、作業ディレクトリが異なる可能性があります。これを確認するには、スクリプトのどこかに次の行を追加してみてください。

print os.getcwd()

これが問題である場合は、呼び出しで相対パスではなく絶対パスを使用するos.chdir()か、予想される場所でスクリプトを開始するように Eclipse で構成を変更する必要がある場合があります。 この回答には、その方法に関するいくつかの指示があります。

于 2012-04-25T16:30:09.983 に答える