ゼロから作るDeep Learningで二次関数を出力する簡単なサンプル。
import numpy as np import matplotlib.pylab as plt def function_1(x): return 0.01 * x ** 2 + 0.1 * x x = np.arange(0.0, 20.0, 0.1) y = function_1(x) plt.xlabel("x") plt.ylabel("y") plt.plot(x, y) plt.show()
実行するとこのようなエラーが発生してしまいました。
Traceback (most recent call last): File "C:\Users\Tono\Documents\Python\DeepLearningFromZero\numbers.py", line 1, in <module> import numpy as np File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\__init__.py", line 180, in <module> from . import add_newdocs File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\add_newdocs.py", line 13, in <module> from numpy.lib import add_newdoc File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\lib\__init__.py", line 8, in <module> from .type_check import * File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\lib\type_check.py", line 11, in <module> import numpy.core.numeric as _nx File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\core\__init__.py", line 22, in <module> from . import _internal # for freeze programs File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\core\_internal.py", line 15, in <module> from .numerictypes import object_ File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\core\numerictypes.py", line 87, in <module> import numbers File "C:\Users\Tono\Documents\Python\DeepLearningFromZero\numbers.py", line 2, in <module> import matplotlib.pylab as plt File "C:\Users\Tono\Anaconda3\lib\site-packages\matplotlib\__init__.py", line 122, in <module> from matplotlib.cbook import is_string_like, mplDeprecation, dedent, get_label File "C:\Users\Tono\Anaconda3\lib\site-packages\matplotlib\cbook.py", line 34, in <module> import numpy.ma as ma File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\ma\__init__.py", line 44, in <module> from . import core File "C:\Users\Tono\Anaconda3\lib\site-packages\numpy\ma\core.py", line 30, in <module> import numpy.core.umath as umath AttributeError: module 'numpy' has no attribute 'core'
しかしIntelliJで実行すると起きるけど、コンソールで入れていくと起きないんです。
IntelliJがバグってるんじゃないかと色々探ってしまいましたが、
Tracebackをよく見てみれば一目瞭然。
モジュール名につけたnumbers.pyという名前が被っていたというだけでした。
モジュール名を変更したら普通に動きました。
名前は適当につけるにしても他のところで使われていなさそうなものを選ばないといけないですね。
コメントを残す