Python / Flask错误:“ImportError:无法导入名称_compare_digest”

时间:2015-09-12 22:56:20

标签: python flask

我在我的电脑上运行linux mint 17.2 XCFE。

我的问题几乎与the one found in this thread完全相同,除了我尝试了所有提供的解决方案而且都没有效果。值得注意的是,由于我试图摆弄python,我的机器现在运行2.7.8并且venv运行2.7.6,这很容易修复但可能是相关的。

我还咨询了thisthis,并尝试更改名为operator的文件名和其他virtualenv命令,但没有任何效果。 (注意:然后我将该文件的名称更改回运营商只是因为那不是问题而是我不想搞砸它。)

当我尝试运行very simple script for flask newbs时,我遇到了同样的错误。

(venv)joshua@joshua-ThinkPad-Edge-E430 ~/website/projects/helloapp $ python hello.py
Traceback (most recent call last):
  File "hello.py", line 1, in <module>
    from flask import Flask
  File "/home/joshua/website/projects/helloapp/venv/lib/python2.7/site-packages/flask/__init__.py", line 21, in <module>
    from .app import Flask, Request, Response
  File "/home/joshua/website/projects/helloapp/venv/lib/python2.7/site-packages/flask/app.py", line 26, in <module>
    from . import json
  File "/home/joshua/website/projects/helloapp/venv/lib/python2.7/site-packages/flask/json.py", line 25, in <module>
    from itsdangerous import json as _json
  File "/home/joshua/website/projects/helloapp/venv/lib/python2.7/site-packages/itsdangerous.py", line 14, in <module>
    import hmac
  File "/home/joshua/anaconda/lib/python2.7/hmac.py", line 8, in <module>
    from operator import _compare_digest as compare_digest
ImportError: cannot import name _compare_digest

我一直试图找出自己的解决方案几个小时,但我没有运气。我认为这可能与Anaconda有关,但我不确定如果是这样的话可以做些什么。

1 个答案:

答案 0 :(得分:2)

事实证明,问题是hmac.py文件引用了一个不再存在的方法。我用&#39;#&#39;禁用了该引用(只是事实证明这很重要)并且它开始工作了。