[英]Python – ImportError: cannot import name X
我正在嘗試使用幾個模塊來運行單個python腳本(該腳本過去一直有效)。 一些谷歌搜索建議循環依賴,但是僅與兩個相互依賴的文件導入模塊有關。
似乎歸結為scalarmath
,但我不知道為什么。 我的代碼只是用於計算的簡單函數def,然后調用這些函數(全部在一個文件中)。
我的IDE的輸出是:
C:\Users\sg15\AppData\Local\Continuum\Anaconda2\python.exe "P:/Solid State QT/NSMM/simulations/InteractionsOfTLF.py"
Traceback (most recent call last):
File "P:/Solid State QT/NSMM/simulations/InteractionsOfTLF.py", line 13, in <module>
import matplotlib.pyplot as plt
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\matplotlib\__init__.py", line 122, in <module>
from matplotlib.cbook import is_string_like, mplDeprecation, dedent, get_label
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\matplotlib\cbook.py", line 33, in <module>
import numpy as np
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\__init__.py", line 185, in <module>
from . import add_newdocs
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
from .type_check import *
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\core\__init__.py", line 20, in <module>
from . import scalarmath
ImportError: cannot import name scalarmath
Process finished with exit code 1
原來,該解決方案是經典的卸載重新安裝jobby。 軟件包似乎與最近的Windows更新或軟件包本身的更新不兼容。 修復步驟(如果需要):
1)在單獨的程序中運行python,然后嘗試導入庫, 例如 import numpy
。 您仍然應該在問題中顯示的圖像中看到輸出錯誤消息。 這表明這不是我們的代碼的本地問題。 關閉該python程序/控制台/任何程序。
2)打開命令提示符(cmd)並運行conda(命令: conda
)。 然后運行命令conda install numpy
和conda install matplotlib
。 單擊是[y]以顯示任何選項。 當然,這些命令取決於導致您麻煩的庫。
3)在python IDE的控制台中,再次import numpy
庫, 即 import numpy
和import matplotlib
。 運行您的代碼,它應該可以正常構建(前提是您沒有其他錯誤)
注意:您可能必須在Anaconda Navigator中卸載有問題的庫,使您在conda環境中遇到麻煩。 為此,請選擇您的conda環境(我的環境稱為qutip
)並刪除麻煩的軟件包。 在這種情況下,它們是matplotlib
和numpy
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.