Python错误:“ImportError:没有名为six的模块”

时间:2014-01-19 20:48:37

标签: python matplotlib six-python

我在Windows 7操作系统上运行Python 2.7

以下是我的观点:

>>> import matplotlib.pyplot as plt

然后我明白了:

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    import matplotlib.pyplot as plt
  File "C:\Python27\lib\site-packages\matplotlib\pyplot.py", line 29, in <module>
    from matplotlib.figure import Figure, figaspect
  File "C:\Python27\lib\site-packages\matplotlib\figure.py", line 36, in <module>
    from matplotlib.axes import Axes, SubplotBase, subplot_class_factory
  File "C:\Python27\lib\site-packages\matplotlib\axes.py", line 20, in <module>
    import matplotlib.dates as _  # <-registers a date unit converter
  File "C:\Python27\lib\site-packages\matplotlib\dates.py", line 119, in <module>
    from dateutil.rrule import (rrule, MO, TU, WE, TH, FR, SA, SU, YEARLY,
  File "C:\Python27\lib\site-packages\dateutil\rrule.py", line 18, in <module>
    from six import advance_iterator, integer_types
ImportError: No module named six

现在,我已经从这里下载了六个:https://pypi.python.org/pypi/six

我解压缩它,如果我从那里打开一个名为setup.py的文件然后我尝试导入matplotlib然后它可以工作,但我不想每次我想制作一个情节时都要这样做吗?有没有办法让它自动生效?

7 个答案:

答案 0 :(得分:17)

您需要在系统上安装它。这基本上意味着将zip文件放在Python可以找到它的位置,但到目前为止最简单的方法是pip install six。不过,这将是第二次下载。

与提及matplotlib installation instructions一样,sixdateutil包的依赖关系。大多数理智的安装方法会自动引入这种依赖关系;如果你首先完成了pip install python-dateutil,那么这个缺失的依赖应该在幕后得到满足。如果您需要完全手动安装,则应仔细阅读这些说明。

答案 1 :(得分:6)

我收到了完全相同的错误消息。它的接缝有很多可能的原因。就我而言,我通过重新安装六个

解决了这个问题
pip uninstall six ; pip install six

我想之前的安装在完全终止之前就已中止了。或许是一个许可问题。或其他什么......现在,调查真正的原因是为时已晚。

答案 2 :(得分:2)

对我来说,我安装了两个版本的matplotlib。只需运行&#34; pip uninstall matplotlib&#34;,然后再次运行&#34; pip install matplotlib&#34;。对我来说,多个doenloads搞砸了一切。首先尝试这个,如果它没有帮助进入下一步。

答案 3 :(得分:1)

在命令行中,导航到包含setup.py并运行

的文件夹
python setup.py install

这会将six软件包安装在所有第三方模块所在的Python site-packages文件夹中。您现在应该能够毫无问题地导入matplotlib。

答案 4 :(得分:1)

将six.py和six.pyc复制到\ Lib。

答案 5 :(得分:0)

我可能会迟到,但我遇到了同样的问题。在我pip安装Pandas后,问题就消失了。清理完毕后,我收到了这条消息

“成功安装了pandas pytz six”

答案 6 :(得分:0)

经过长时间的战斗后发现它的运作方式。 Python 3.4版本。

实际上,正如许多人所说,您可以将六个包下载为.zip文件,并在“site packages”文件夹(C:\ Python34 \ Lib \ site-packages)中提取内容,以便 init .py文件属于从那里读取的。

当我们运行python脚本时,从 init .py的同一文件执行此操作后,我们运行4-5个模块错误,说明模块不可用。 经过长时间的搜索后,我发现这个页面非常有用,只需跟上IDLE状态的错误。

祝你好运!“