【发布时间】:2015-10-08 13:26:22
【问题描述】:
所以几个月前我一直在使用 virtualenvs,但不得不停止一段时间,现在我似乎无法让它再次工作。
这就是我所做的
D:\CS\Python_Projects\HomeCenter>venv\Scripts\activate
(venv) D:\CS\Python_Projects\HomeCenter>pip freeze
You are using pip version 6.0.8, however version 7.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Flask==0.10.1
Flask-SQLAlchemy==2.0
itsdangerous==0.24
Jinja2==2.8
MarkupSafe==0.23
SQLAlchemy==1.0.8
waitress==0.8.9
Werkzeug==0.10.4
(venv) D:\CS\Python_Projects\HomeCenter>server.py
Traceback (most recent call last):
File "D:\CS\Python_Projects\HomeCenter\server.py", line 3, in <module>
from waitress import serve
ImportError: No module named 'waitress'
(venv) D:\CS\Python_Projects\HomeCenter>
如果我要运行 app.py,也会发生同样的情况,它不会找到烧瓶。我一直在使用 PyCharm,当我在那里检查时,它告诉我解释器指向 D:\CS\Python_Projects\HomeCenter\venv 的 3.4.2 virtualenv
那为什么找不到模块呢?
如果相关,请查看 server.py 的内容
from waitress import serve
import os
from app import app
port = int(os.environ.get('PORT', 9999))
serve(app, host='0.0.0.0', port=port)
【问题讨论】:
-
如果你改为运行
python server.py会发生什么? -
然而,同样的事情,当我执行 venv\Scripts\python.exe server.py 时,它就可以工作了。所以我只是觉得很傻
-
这意味着您正在使用不同的解释器运行您的应用程序。听起来你的 PATH 搞砸了。为避免这种情况,建议您不要直接使用 pip。请改用
python -m pip(例如venv\Scripts\python.exe -m pip install [library_name])。
标签: python-3.x flask virtualenv