【问题标题】:Questions Virtualenv [duplicate]问题 Virtualenv [重复]
【发布时间】:2021-04-17 22:33:30
【问题描述】:

只是想设置我的新 MacBookPro M1。因为这次我想整理我的 MB,所以我想开始使用 virtualenv。 所以,到目前为止我做了什么:

  • 已安装 brew
  • 已安装 virtualenv
  • 设置一个目录,在那里创建我的第一个名为 sec_env 的环境
  • 安装了一些测试包

现在我想使用我的 virtualenv:

  • 我启动了,来源 sec_env/dir/activate
  • 现在我们开始吧,我想在这个环境中编写一些代码。所以我启动了我的代码内部人员并尝试导入我已经安装的包......不起作用;((EDIT1:也许我在vs代码中配置它失败?)

我是否误解了 virtualenv 的使用?我认为它有点像虚拟机......所以我可以为一个项目安装需要的包并对其进行编码。但如果我在另一个项目上工作,我会切换,再次启动我的 vs-code 并继续写另一个项目。

或者问题只是我想要编码的所有项目都必须在 virtualenv(sec_env) 的目录中?目前,我有一个目录 virtualenvs,我在其中存储所有环境,启动一个并切换到桌面工作。所有项目都在我的桌面上。

如果有人在这方面给我任何提示,或者用另一种方法来区分我的不同项目,那就太棒了。我对这个话题非常陌生,因为我之前使用过不同的虚拟框图像......现在我不得不使用其他东西......M1:D!

【问题讨论】:

  • "所以我启动了我的代码内部人员并尝试导入我已经安装的包"这是什么意思?什么是“代码内部人员”?
  • VS Code 在启动时不会维护您激活的 virtualenv。
  • @sinoroc 我只是指 vs-code 编辑器,但苹果硅版本被称为类似的东西。是的,我只是创建一个新的 *.py 文件并开始导入。
  • @OneCricketeer 好的,但是有没有办法做到这一点?我可以完全独立地从事两个不同的项目吗?抱歉,我对这些主题不太熟悉……正如我所说,我之前只使用过 virtualbox
  • 您需要了解如何将 Visual Studio 代码与 Python 虚拟环境耦合。这应该很简单。已经有很多类似的问题有很好的答案。您的问题是否有一些独特之处尚未涵盖?

标签: python visual-studio-code virtualenv python-venv apple-silicon


【解决方案1】:

您的理解通常是正确的,因为 virtualenv 是一种让项目的依赖关系相互分离的方法,就像虚拟机一样。

您的代码不需要与您的虚拟环境位于同一目录中,但为了方便起见,许多人倾向于以这种方式组织它。这样您就无需考虑使用什么 venv 编写项目,因为它就在目录中。

按照您的步骤,我认为您在激活环境之前安装了一个包。以该顺序执行此操作会将包安装在您的系统站点包中,而不是您的虚拟环境包中。在安装软件包之前,您需要激活您的环境。此外,从How to tell Homebrew to install inside virtualenv? 看来,自制软件不支持将软件包安装到虚拟环境中。因此,为了将包安装到 virtualenv 中,我建议使用 pip 作为包管理器。

So the sequence of commands would be...
source <path to virtualenv>/dir/activate
pip install <modules you want to install>
# Now you can run your code that references those installed modules. 

【讨论】:

  • 谢谢!我想我搞砸了我的英语描述......对不起。我应该正确安装所有东西,因为我只是在其中尝试了 ipyhton 并且在那里我能够导入包:) 我认为@sinoroc 只是正确地指出它只是 vs-code 中的错误设置......要去搜索那个
猜你喜欢
  • 1970-01-01
  • 2011-05-30
  • 1970-01-01
  • 2015-06-25
  • 2014-07-11
  • 1970-01-01
  • 1970-01-01
  • 2010-11-03
  • 1970-01-01
相关资源
最近更新 更多