ImportError:没有名为operator

时间:2018-02-05 22:12:53

标签: python python-2.7

我很擅长使用p​​ython并且没有做任何事情来配置python。我的教授给了我们一个autograder.py文件,它检查我们的python代码是否正确。 autograder.py文件导入一个名为grader.py的文件,然后导入一个称为cgi(import cgi)的文件。在这个位于' /usr/lib/python2.7/cgi.py'的cgi文件中;有一行代码

from operator import attrgetter

这是问题发生的地方。我收到以下错误

     Traceback (most recent call last):
      File "autograder.py", line 12, in <module>
        import grading
      File "/home/ggkfox/Documents/164-CSCI/1-Assignment/tutorial/grading.py", line 13, in <module>
        import cgi
      File "/usr/lib/python2.7/cgi.py", line 37, in <module>
        from operator import attrgetter
    ImportError: No module named operator

我的理解是应该内置操作员模块(根据其他堆栈溢出帖子)。这个错误只发生在我使用python2.7.12(而不是python3.5)时。我在2.7中导入Tkinter也有类似的问题。

我也想说我尝试使用以下方法卸载python:

sudo apt-get purge python2.7

但它甚至不会卸载我甚至尝试重新安装。我没有使用任何pipenv或desktopenv。

我不知道还有什么可说的,我对python编码很新。

1 个答案:

答案 0 :(得分:1)

对每个python项目使用virtualenv几乎是必要的。

virtualenv创建了一个专用的python环境,它可以帮助您远离许多操作系统。相关问题。

Here,你可以找到一些兼容所有Python版本的virtualenv解决方案,以及official python 3.6.4 documentation