【发布时间】:2017-01-06 18:56:37
【问题描述】:
我知道使用虚拟环境是最佳做法,但我只想自己解决这个问题。所以这就是故事。 我有一个 Flask 应用程序,已经设置了一个虚拟环境,并且我在 Windows 上运行所有东西。效果很好! 但是,如果我使用我的全局 Python 解释器运行相同的应用程序,该解释器 与我的虚拟解释器相同 - 我会收到此错误:
D:\Development\stempal>python -m flask run
C:\Anaconda3\python.exe: No module named flask.__main__; 'flask' is a package and cannot be directly executed
请注意,同样的命令在虚拟环境中运行完美:
(venv) D:\Development\stempal>python -m flask run
* Serving Flask app "flask_app"
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
有什么区别?
【问题讨论】:
-
你难道没有一个名为
flask的包在D:\Development\stempal\python中吗?这可能是为什么奇怪的错误消息。但是您的两个虚拟环境之间可能仍然存在差异。比较virtualenv内外pip freeze的输出。 -
不,附近没有
flask包。但是,您对差异的评论帮助我解决了这个问题!事实证明,在我的虚拟环境之外,Flask 已经过时了,而旧版本根本没有flask命令。非常感谢,@jbacko
标签: python flask virtualenv