2

pyplotからモジュールをインポートしようとすると、非常に奇妙な動作が見つかりましたmatplotlib。最初は存在しないと言われますが、pylab(別のmatplotlibモジュール)をインポートした後、突然機能します!

>>> import matplotlib
>>> matplotlib.__version__
'1.2.1'
>>> matplotlib.pyplot
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'pyplot'
>>> import pylab
>>> matplotlib.pyplot
<module 'matplotlib.pyplot' from '/Library/Python/2.7/site-packages/matplotlib/pyplot.pyc'>

他の誰かが自分のコンピューターでこの動作をしていますか?


**これは、Python 2.7 を実行している OS X Mountain Lion で発生しました。でインストールmatplotlibしましpipた。

4

1 に答える 1

4

一般に、パッケージ内のモジュールにアクセスするには、そのモジュールをインポートする必要があります。パッケージをインポートして、ドット構文でモジュールにアクセスすることはできません。するだけですfrom matplotlib import pyplot(またはimport matplotlib.pyplot、ドットを入力するのが本当に好きな場合)。

インポート後に機能する理由pylabは、pylabインポートpyplotpyplot、同梱するパッケージの属性として使用できるためですmatplotlib

基本的に、やればimport packageできるようになるとは期待できませんpackage.module。しかし、もしあなたがそうするなら、あなたはimport package する from package import moduleことができますpackage.module

于 2013-03-29T18:40:14.843 に答える