numpyをimportするとエラーが出る
はじめまして。
こちらで質問させて頂いて良いものか判らないので相応しくなければ申し訳ありません。
3DモデリングツールのBlenderで「mmd tool」というアドオンを追加しようとすると、以下のエラーが表示されてしまいます。
File "/usr/lib/python3/dist-packages/numpy/core/__init__.py", line 16<module> from . import multiarray
ImportError: cannot import name 'multiarray' from 'numpy.core' (/usr/lib/python3/dist-packages/numpy/core/__init__.py)
UbuntuもBlenderも僅かな経験な上にPythonは全くの初心者なので、質問すべき場所がわからず、こちらにたどり着きました。
スタックオーバーフロー内で同様の質問があり回答も付いていたのですが、当方では解決できずにいます。
実行環境
- Ubuntu 18.04.3 LTS
- Blender 2.82.1
- Python 3.6.8
- numpy 1.16.5
- multiarrayは
multiarray.cpython-36m-x86_64-linux-gnu.so
multiarray_tests.cpython-36m-x86_64-linux-gnu.so
のどちらが呼ばれているのか、もしくはどちらも呼ばれていないのか分かりません。
multiarray.soは存在しないので、シンボリックリンクでmultiarray.soに片方ずつ試したのですがやはり同じエラーで動かず、運用としてマズそうなので元に戻しています。
また、pipを使ったnumpyの再インストール、ライブラリの更新、apt update
等は行いました。
Pythonは3.7をインストールしているのですが、3.6で説明されているサイトがほとんどなので3.6.8で運用しています。
簡単なことを見落としているのだろうと思いますが、よろしくお願いいたします。
追記
こちらの質問に似ております。
ただあちらは呼び出し側のソースはご自分で書かれているので、全く同じとは言えないかもしれません。
またあちらは、Python3.4で解決したとの項目、sudo apt-get install python3.4-venvはsudo apt-get install python3.6-venv
と置き換えて実行済みですが変わりありませんでした。
Python3.7については、質問のあと邪魔かと思いアンインストールしたので、現在は3.6.8です。
これはubuntu 18.04.3 LTSに付いていたものです。
追記2
Bash の上で Python インタプリタを起動し import numpy
をしてもエラーは出ませんでした。python
および python3
どちらも試しました。それぞれのコマンドに対して type
コマンドを実行するとこうなりました。
~$ type python
python は /usr/bin/python です
~$ type python3
python3 は /usr/bin/python3 です
エラーメッセージ全体はこちらです。コピペ出来ない上に出力される文字が小さくて…typoあったらすみません。
Traceback (most recent call last)
Import Error:
Importing the multiarray numpy extension module failed. Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo. try 'git clean -xdf" (removes all
files not under version control). Otherwise reinstall numpy.
File"/usr/share/blender/2.82/scripts/modules/addon_utils.py", line 351, in enable
mod = __import__(module_name)
File "home/名前/.config/blender/2.82/scropts/addons/mmd_tools/__init__.py", line 52, in <module> from . import propeties
File "/home/名前/.config/blender/2.82/scripts/addons/mmd_tools/propeties/__init__.py", line 16, in <module> from . import (
File "/home/名前/.config/blender/2.82/scripts/addons/mmd_tools/propeties/root.py", line 12, in <module> from mmd_tools.ore.sdefimport FnSDEF
File "home/名前/.config/blender/2.82/scropts/addons/mmd_tools/core/sdef.py", line 4, in <module> import numpy as np
File "usr/lib/python3/dist-packages/numpy/__init__.py", line 142, in <module> from . import add_newdoc
File "usr/lib/python3/dist-packages/numpy/add_newdocs.py", line 13, in <module> from numpy.lib import add_newdoc
File "/usr/lib/python3/dist-packages/numpy/lib/__init__.py", line 8,in <module> from .type_check import *
File "/usr/lib/python3/dist-packages/numpy/lib/type_checck.py", line 11, in <module> import numpy.core.numeric as_nx
File "/usr/lib/python3/dist-packages/numpy/core/__init__.py", line 26, in <module> raise importError(msg)
Original error was: cannot import name 'multiarray' from 'numpy.core' (/usr/lib/python3/dist-packages/numpy/core/__init__.py)