【发布时间】:2017-11-04 11:46:46
【问题描述】:
完整的错误是:
Traceback (most recent call last):
File "D:\pyqt4_examples\matplotlib.py", line 4, in <module>
import matplotlib.pyplot as plt
File "D:\pyqt4_examples\matplotlib.py", line 4, in <module>
import matplotlib.pyplot as plt
ModuleNotFoundError: No module named 'matplotlib.pyplot'; 'matplotlib' is not a package
测试代码在文件histogram.py:
import sys
for item in sys.path: print( item )
import random
import matplotlib.pyplot as plt
x = random.sample(range(1000), 30)
xbins = [0, len(x)]
print( "x: " + str( x ) )
print( "xbins: " + str( xbins ) )
plt.bar(range(0,30), x)
plt.show()
步骤
在我第一次运行代码后,当我执行for item in sys.path: print( item )时,我得到了python系统路径的两倍,如下所示:
D:\pyqt4_examples
F:\Python36\python36.zip
F:\Python36\DLLs
F:\Python36\lib
F:\Python36
F:\Python36\lib\site-packages
F:\Python36\lib\site-packages\Sphinx-1.5.6-py3.6.egg
F:\Python36\lib\site-packages\win32
F:\Python36\lib\site-packages\win32\lib
F:\Python36\lib\site-packages\Pythonwin
F:\Python36\lib\site-packages\setuptools-27.2.0-py3.6.egg
D:\pyqt4_examples
F:\Python36\python36.zip
F:\Python36\DLLs
F:\Python36\lib
F:\Python36
F:\Python36\lib\site-packages
F:\Python36\lib\site-packages\Sphinx-1.5.6-py3.6.egg
F:\Python36\lib\site-packages\win32
F:\Python36\lib\site-packages\win32\lib
F:\Python36\lib\site-packages\Pythonwin
F:\Python36\lib\site-packages\setuptools-27.2.0-py3.6.egg
...
Here is the erro message, just above
在文件夹F:\Python36\lib\site-packages 上,matplotlib 和 matplotlib.pyplot 是否正确:
$ ls F:\Python36\lib\site-packages\matplotlib
__init__.py _mathtext_data.py animation.py blocking_input.py ...
_contour.cp36-win32.pyd _version.py backend_tools.py compat ...
_delaunay.cp36-win32.pyd... mathtext.py pyplot.py...
_image.cp36-win32.pyd afm.py bezier.py contour.py ...
...
详情
直到昨天我的Anaconda Python 2.7.13 工作得非常好。但我还决定安装Python 3.6 来运行仅适用于较新版本的新程序。在那之后它开始不再工作了。
我不知道为什么,所以我卸载了 Python 3,但仍然无法正常工作。然后我重新安装了 Python 2.7 仍然无法正常工作。我安装了 Pythonxy,但仍然无法正常工作。
在4年没有格式化我的电脑并且从未删除我的数据之后,因为我总是使用upgrade工具从Windows 8.1迁移到Windows 10,我完全格式化了我的电脑删除了我的所有数据,并安装了一个新的全新安装Windows 10 Creator Update。并安装了Python Anaconda 2.7,但仍然无法正常工作。然后我安装了Python 3 Anaconda 仍然无法正常工作。然后我卸载了 Python 2.7 仍然无法正常工作。
我不知道为什么它不起作用。我该如何调试python,或者我可以尝试什么来找到问题?我的意思是,它没有任何意义,因为它是一个全新的系统安装,它怎么能立即破坏Python?在我的旧安装上使用 python 已经有 4 年了,直到昨天才出现问题。现在旧安装和全新安装都无法正常工作。
我的系统现在是:
$ systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
OS Name: Microsoft Windows 10 Pro
OS Version: 10.0.15063 N/A Build 15063
$ python --version
Python 3.6.1 :: Anaconda 4.4.0 (32-bit)
我能找到的相关问题:
- No module named 'matplotlib.pyplot'; 'matplotlib' is not a package
- ImportError: No module named matplotlib with matplotlib installed
- ImportError: No module named 'matplotlib.pyplot'; matplotlib is not a package
- matplotlib - ImportError: No module named _tkinter
- ImportError: No module named matplotlib in IDLE
- ModuleNotFoundError: No module named 'matplotlib.pyplot'
- Failure to import matplotlib.pyplot in jupyter (but not ipython)
- jupyter ModuleNotFoundError: No module named matplotlib
- ImportError No module named 'matplotlib'
- ImportError: No module named matplotlib
- ImportError: No module names 'matplotlib' Python 3.3
- ImportError: No module named 'matplotlib' -- Using Anaconda tensorflow environment
- Have installed matplotlib 3 times still get error: ImportError: No module named backends.backend_wxagg
- anaconda cannot import matplotlib.pyplot
- Python matplotlib installation issue
【问题讨论】:
-
您的第一个
sys.path是D:\pyqt4_examples,其中有一个名为matplotlib.py的文件...import matplotlib.xxx将尝试加载此文件,这就是它不是包的原因。重命名它,看看是否可以解决它。 -
感谢@AChampion!错误消息中明确说明了它正在尝试导入与模块命名相同的文件。我不敢相信我浪费了整整 2 天的时间,再加上未来一个月的时间,我为了这么简单的事情重新安装了所有应用程序和备份。
标签: python windows python-2.7 matplotlib windows-10