我知道使用虚拟环境是最佳实践,但我只想自己解决这个问题。这就是故事。 我有一个 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)
有什么区别?
最佳答案
感谢@jbasko,我开始比较 virtualenv 内外的包列表。原来我的 flask
包已经过时了,如前所述 in this question它没有 flask
命令。
升级 Flask 解决了这个问题。
关于python - 没有带有全局解释器的名为 flask.__main__ 的模块(可以使用 virtualenv),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41512443/