【问题标题】:PYTHONPATH not working with IDLE on Mac OSXPYTHONPATH 不适用于 Mac OSX 上的 IDLE
【发布时间】:2016-08-06 12:52:45
【问题描述】:

我在 MAC OSX 10.11.4 上安装 Python 3.4 时遇到了一个非常基本的问题。我已经在我的 .bash_profile 中设置了 PYTHONPATH,并且在从终端运行 python 时找到了路径,如果我在终端中导入 sys 并检查 sys.path,我会看到我的预期路径。

但是,当我加载 IDLE 并查看路径浏览器时,PYTHONPATH 条目不在 sys.path 中,并且我的代码没有运行。有几篇文章讨论了在 IDLE 中添加代码以添加到 sys.path 中,但这是我不想做的 hack。如何让 IDLE 将 PYTHONPATH 条目读入 sys.path?

更多信息:在 Windows 上,我设置了一个 PYTHONPATH 环境变量,并且路径确实按预期显示在路径浏览器中。

这是 OSX 上 IDLE 的基本问题,还是我在安装过程中遇到了问题,或者?

【问题讨论】:

  • 您是否从 Launchpad 运行 IDLE?它不会继承 .bash_profile 中设置的环境变量,除非您从 bash 运行它。
  • 谢谢,这回答了我的问题。我通过单击空闲图标运行。从 bash 运行我确实看到了路径。

标签: python macos python-idle pythonpath


【解决方案1】:

这种行为的原因是您的环境变量具有不同的范围。只有当您通过打开终端启动新的 bash 会话时,才会加载您在 .bash_profile 中设置的变量。但是,当您通过单击打开 IDLE 时,您会看到一组不同的环境变量。这就是当您通过终端调用 IDLE 时它起作用的原因。这样,所有环境变量都会传递给您启动的进程。

至少有两种解决方案:

  1. 始终从终端打开 IDLE
  2. 更改所有通过 gui 启动的应用程序的环境变量。这可以通过编辑 /etc/launchhd.conf 来完成(在 Ubuntu 中,您可以修改 ~/.profile)。看here。但是,如果我没记错的话,这不适用于通过聚光灯打开应用程序。

【讨论】:

    猜你喜欢
    • 2011-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-17
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多