0

Python(x,y) 2.7 を使用しています。Spyder または Eclipse+Pydev を使用してコードを記述します。Python モジュールのリストを取得しようとすると、Spyder IDE は Eclipse+Pydev とは異なる結果を返します。コードはシンプル

import sys as s
print s.modules.keys() 

Spyder は次のような適切なモジュール名を付けます

 ['matplotlib._tri', 'numpy.core.info', 'dicom.os', 'matplotlib.artist',...etc.

Eclipse+Pydev のような結果が得られます

['copy_reg', 'sre_compile', 'locale', '_sre', 'functools', 'encodings', 'site', ' builtin ', 'sysconfig', 'operator', ' main ', 'types', ' encodings.encodings'、'sphinxcontrib'、'msvcrt'、'abc'、'enthought'、'_weakrefset'、'errno'、'encodings.codecs'、'sre_constants'、'imp'、'_abcoll'、'ntpath' 、「_codecs」、「new」、「nt」、「_warnings」、「genericpath」、「stat」、「zipimport」、「encodings. builtin '、'warnings'、'UserDict'、'encodings.cp1252'、'sys'、'codecs'、're'、'os.

この違いはなぜですか?どんな知識資料/参照も素晴らしいでしょう。Spyder と同じ結果を得る方法はありますか?

4

1 に答える 1

2

Spyder の主な設計目標の 1 つは、インタラクティブな科学計算を可能な限り簡単にすることです。これを容易にするために、デフォルトで Spyder は起動時にカスタム調整されたインタラクティブな Python セッションを起動します。このカスタマイズは、インタープリターの起動時に実行されるスクリプトへのパスを指定する PYTHONSTARTUP という環境変数を設定することによって実現されます。この設定は、設定...コンソール...詳細設定で制御できます。デフォルトでは、Spyder は をポイントしますscientific_startup.py。これは、科学的なモジュールと関数のホスト全体をメインの名前空間に直接インポートするため、迅速でインタラクティブな探索が簡単になります。

インタープリター構成設定で同じ環境変数を設定することにより、同じ科学的起動スクリプトをロードするように PyDev を構成できると思います。ただし、PyDev は、すべての Python インタープリターに対してこの起動スクリプトを使用します。特に、PyDev を使用して Python アプリケーションを開発している場合は、常にそうするつもりはないかもしれません。

Spyder エディター内の任意のスクリプトについて、現在のインタラクティブな Python インタープリターで実行するか、科学的なスタートアップ スクリプトを使用しない別の専用 Python インタープリターで実行するかを制御できることに注意してください。Run Setting ダイアログを使用します (F6 キーを押します)。同じ対話型セッションでスクリプトを何度も実行し続けたい場合もありますが、(GUI アプリの開発など) 各スクリプトの実行を、多くの余分な科学的関数を持たないクリーンな Python セッションで実行したい場合もあります。メインの名前空間。

于 2013-05-11T21:19:40.047 に答える