私はAnaconda 2.1.0ディストリビューションを通じてscipyとnumpyを使用しています。私は私のPython IDEとしてSpyderを使用します。私はimport scipy as sp
を実行するとnumpyとScipyパッケージのモジュール/サブパッケージのインポートの相違点
、私はimport numpy as np
を実行すると、私のような、そのすべてのサブパッケージにアクセスすることができています、しかしsp.
経由など、クラスタ最適化、linalg、などのサブパッケージに、アクセスできません。 linalg、random、matrixlib、polynomial、testingなどをnp
に渡します。
2つのインポートが異なる方法で動作する理由はありますか? import scipy as sp
は、すべてのscipyサブパッケージをsp
の名前空間に入れないのはなぜですか?
これは本当に興味深い質問です。面白いことです: 'sp.optimize'と打ち込むと' import scipy as sp'の後にエラーが出ます。しかし、 'scipy import optimize'を実行した場合、' sp.optimize'は突然エラーになりません。この問題は、anacondaに固有の問題ではありません。 – cel
@celの場合、 'scipy import optimize'と入力すると、インタープリターはメインパッケージ' scipy'を既にロードしていることを認識し、サブモジュール 'optimize'をすでにインポートしているのでロードされたモジュール。識別子 'sp'は以前と同じモジュールを指しています。これは現在 '更新'されているので、識別子を介してサブモジュール' optimize'にアクセスすることができます。 – gg349
@ gg349、それは意味をなさない - 知らなかった: – cel