&引用;ImportError:没有名为SocketServer的模块;尝试使用Python 3运行Flask时
烧瓶已安装有&引用;ImportError:没有名为SocketServer的模块;尝试使用Python 3运行Flask时,python,python-3.x,flask,Python,Python 3.x,Flask,烧瓶已安装有pip3安装烧瓶。我的代码如下: import flask app = flask.Flask(__name__) @app.route('/') def hello(): return "Hello World" if __name__ == '__main__': app.run(host='0.0.0.0', port=8080) 当我以Python2的形式运行这段代码时,它会生成通常的输出并正确响应请求。在Python3下运行时,不会产生任何输出,所有连
pip3安装烧瓶
。我的代码如下:
import flask
app = flask.Flask(__name__)
@app.route('/')
def hello():
return "Hello World"
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8080)
当我以Python2的形式运行这段代码时,它会生成通常的输出并正确响应请求。在Python3下运行时,不会产生任何输出,所有连接到localhost:8080或127.0.0.1:8080的尝试都会被拒绝
当我关闭服务器时,它会给我以下消息:
Traceback (most recent call last):
File "/usr/local/lib/python3.4/dist-packages/werkzeug/serving.py", line 58, in <module>
from SocketServer import ThreadingMixIn, ForkingMixIn
ImportError: No module named 'SocketServer'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "testflask.py", line 9, in <module>
app.run(host='0.0.0.0', port=8080)
File "/usr/local/lib/python3.4/dist-packages/flask/app.py", line 758, in run
from werkzeug.serving import run_simple
File "/usr/local/lib/python3.4/dist-packages/werkzeug/serving.py", line 61, in <module>
from socketserver import ThreadingMixIn, ForkingMixIn
File "/home/samtheman/code/lasreader/rclick/socketserver.py", line 25, in <module>
MyServer(s.accept()).start()
File "/usr/lib/python3.4/socket.py", line 184, in accept
fd, addr = self._accept()
KeyboardInterrupt
$pip show flask werkzeug
---
名称:烧瓶
版本:0.10.1
位置:/usr/local/lib/python2.7/dist-packages
要求:Werkzeug,Jinja2,它很危险
---
姓名:Werkzeug
版本:0.9.6
位置:/usr/local/lib/python2.7/dist-packages
要求:
您的回溯显示导入了错误的模块:
File "/usr/local/lib/python3.4/dist-packages/werkzeug/serving.py", line 61, in <module>
from socketserver import ThreadingMixIn, ForkingMixIn
File "/home/samtheman/code/lasreader/rclick/socketserver.py", line 25, in <module>
MyServer(s.accept()).start()
文件“/usr/local/lib/python3.4/dist-packages/werkzeug/service.py”,第61行,在
从socketserver导入ThreadingMixIn、ForkingMixIn
文件“/home/samtheman/code/lasreader/rclick/socketserver.py”,第25行,在
MyServer(s.accept()).start()
看到第二行了吗?这不是标准的库socketserver
,而是一个完全不同的模块。作为该模块的一部分,它在导入时启动套接字服务器,因此Werkzeug导入永远不会完成,也永远不会正常运行
从python路径中删除/home/samtheman/code/lasreader/rclick
,或者完全删除该模块