我的文件系统如下所示:
home / virtualenv / flaskenv
home / python / flask / [我所有的烧瓶项目]
我最初在virtualenv / flaskenv文件夹中设置了virtualenv。 我的印象是,当我想使用virtualenv时,我需要导航到该文件夹并激活它(source flaskenv / bin / activate.fish),然后导航到我的flask项目文件夹以便正确运行它们。但是,我可以运行它们而不需要激活我的virtualenv。
我觉得我在这里做错了什么。我记得当我第一次开始使用virtualenv时,我很困惑并且跑了#34; pip install flask" (和其他几个包)在几个不同的文件夹中,但我不记得哪些。
如何判断我是否在不应该安装的地方安装包裹?我该如何清理它们?注意:当我跑步时,冻结'我得到了几十个结果,并且我的virtualenv文件夹,我的python文件夹和所有单独的项目文件夹都是相同的。
我对此时的内部运作知之甚少,而且我不知道这是否应该起作用,但我有这种唠叨的感觉,我做错了。 / p>
答案 0 :(得分:0)
您可能在每个virtaulenvs中安装了flask
系统范围的和。然后,无论是否激活virtualenv,您都可以运行您的程序。这不一定是个问题。
除非您正在处理冲突的软件包和/或冲突的版本,否则对于virtualenv没有紧急的需要。它们很好用,并且它们便于共享源代码,因为您可以轻松跟踪每个项目所具有的依赖项的确切性。但是在系统范围内安装软件包也可以。
Akash Kothawale 建议使用--no-site-packages
,但这是较新的virtualenv版本中的默认行为。一个新的virtualenv应该没有包。要知道您正在正确设置,请创建一个新的环境,激活它并运行
pip freeze
在安装任何东西之前。这应该返回一个空列表(没有输出),并且你的Flask程序不会运行。然后安装Flask以确定它再次有效。