【问题标题】:What does it mean to "Inherit global site-packages" in PyCharm?PyCharm 中的“继承全局站点包”是什么意思?
【发布时间】:2020-06-20 11:21:20
【问题描述】:

创建新的 Python 项目时,为什么要选择此选项?如果我不选择它,我会错过什么功能?我不能导入某些 Python 模块吗?

【问题讨论】:

  • 你在哪里看到这个选项?
  • 新建 Python 项目并选择“项目解释器”下拉菜单时
  • 可悲的是,PyCharm 文档太差了,用户不得不在外部资源上问这样的事情(:

标签: python pycharm site-packages


【解决方案1】:

这只是一个选项,可以预先安装一些您每次都在使用的软件包,或者如果在本地 python 解释中有额外的软件包不会打扰您

  • 选择它:安装在你机器的全局 python 中的所有包都将安装在你要在 virtualenv 中创建的解释器中。
  • 不要选择它:你要在 virtualenv 中创建的解释器只有基本的,比如 pip 和 setuptools,然后你可以安装你需要的东西

Python 全局和 venv:

  • 全局python,在Linux中/usr/bin中,或者在Windows中的任何地方,这是程序的主要安装,您可以使用pip添加额外的包

    李>
  • 当您在做某事时,您可能只需要一些包或特定版本,因此不使用全局 Python。您可以创建一个 virtualenv 或 pyenv,它将本地 python 链接到全局 python,用于主要 python 功能,但包将仅安装在 virtualenv 中(使用 Pycharm 时,它可以为您安装主包进入你正在创建的虚拟环境)

【讨论】:

  • 你能澄清一下“你机器的全局python”是什么意思吗? Windows 是否使用 Python 执行某些操作系统任务?还是我必须自己编写这些包?
  • @HaydenMorgan 我已经更新了,有关 virtualenv、pip、python 包的更多详细信息,请查看 web ;)
  • 好答案,这对我很有帮助。
  • 是否可以做类似的事情,但不是从全局 python 继承站点包,而是从一个虚拟环境到另一个虚拟环境?
  • @MorningGlory 我真的不知道,看看google.com/search?q=virtualenv+inherit+from+another 并搜索 ;)
【解决方案2】:

其他答案不太准确。 “继承全局站点包”不会“预安装”或“添加包”到您的虚拟环境中。设置让您的虚拟环境访问全局站点包。

https://www.jetbrains.com/help/pycharm/creating-virtual-environment.html

如果您希望将安装在您机器上的全局 Python 中的所有包都添加到您要创建的虚拟环境中,请选中继承全局站点包复选框。此复选框对应于 virtualenv 工具的 --system-site-packages 选项。

https://virtualenv.pypa.io/en/16.7.9/reference.html

--系统站点包 授予虚拟环境访问全局站点包的权限。

【讨论】:

    【解决方案3】:

    PyCharm 使用 virtualenv 为您的项目提供自己的一组包,这些包与系统的其余部分是分开的。 “继承全局站点包”是指将安装在您计算机上(虚拟环境之外)的包添加到虚拟环境中。

    【讨论】:

      【解决方案4】:

      你必须先了解什么是继承。 继承允许您使用父母的方法字段。 所以在这种情况下,你可以使用你的根 python 环境的包。

      【讨论】:

        猜你喜欢
        • 2012-05-02
        • 1970-01-01
        • 2019-03-26
        • 2019-07-06
        • 1970-01-01
        • 2014-04-13
        • 2012-08-18
        • 1970-01-01
        相关资源
        最近更新 更多