尝试使用 app.run(debug=True)
运行代码时,使用 Flask (0.8) 和 Werkzeug (0.8.1) 我收到下面描述的错误。使用app.run()
错误
Traceback (most recent call last):
File "code2.py", line 9, in <module>
app.run(debug=True)
File "/<snip>/env/lib/python2.7/site-packages/Flask-0.8-py2.7.egg/flask/app.py", line 703, in run
run_simple(host, port, self, **options)
File "/<snip>/env/lib/python2.7/site-packages/Werkzeug-0.8.1-py2.7.egg/werkzeug/serving.py", line 587, in run_simple
from werkzeug.debug import DebuggedApplication
File "/<snip>/env/lib/python2.7/site-packages/Werkzeug-0.8.1-py2.7.egg/werkzeug/debug/__init__.py", line 14, in <module>
from werkzeug.debug.tbtools import get_current_traceback, render_console_html
File "/<snip>/env/lib/python2.7/site-packages/Werkzeug-0.8.1-py2.7.egg/werkzeug/debug/tbtools.py", line 19, in <module>
from werkzeug.debug.console import Console
File "/<snip>/env/lib/python2.7/site-packages/Werkzeug-0.8.1-py2.7.egg/werkzeug/debug/console.py", line 144, in <module>
class _InteractiveConsole(code.InteractiveInterpreter):
AttributeError: 'module' object has no attribute 'InteractiveInterpreter'
代码(code.py)
from flask import Flask
app = Flask(__name__)
@app.route('/news/')
def news():
pass
if __name__ == '__main__':
app.run(debug=True)
重现错误的步骤
$ cd <project directory>
$ . env/bin/activate # Activates virtuanlenv environment (see below for packages)
$ python code.py
我的 env/lib/python2.7/site-packages 的内容(使用的各种库的版本)通过 virtualenv
Flask-0.8-py2.7.egg
Jinja2-2.6-py2.7.egg
pip-1.0.2-py2.7.egg
setuptools-0.6c11-py2.7.egg
Werkzeug-0.8.1-py2.7.egg
到目前为止我已经尝试解决这个问题,但没有帮助(不幸的是)
- 广泛的谷歌搜索/SO 搜索
- 大大简化了我的代码
- 删除创建的 virtualenv 和所有库并通过 easy_install 重新安装
奇怪的是,昨晚这段代码运行良好。今天早上,在没有更改任何内容(据我所知)的情况下,代码无法正常运行。
非常感谢您的帮助!
最佳答案
问题是您将模块命名为 code.py
。 code
是 werkzeug 使用的内置 Python 模块。
要解决此问题,请将 code.py
重命名为其他名称,并确保删除 code.pyc
文件。
关于python - Werkzeug 属性错误 : 'module' object has no attribute 'InteractiveInterpreter' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7880827/