9

我正在尝试设置我的PYTHONPATHPYTHONHOME变量,但无法弄清楚!

尝试运行时python,我收到错误消息No module named site

经过一番研究,似乎这是因为这些PYTHONPATHPYTHONHOME环境变量设置不正确。

python当我在取消设置这两个变量后尝试运行时,它能够正常运行。但问题是这只会持续我的一生virtualenv。在我停止virtualenv并再次运行它后,问题又回来了。

好吧,我是说virtualenv,但实际上这是我在 Heroku 上的环境。

如何永久取消设置这些变量?


更新:我按照这里的教程进行操作,似乎可以解决问题。

4

3 回答 3

0

你为什么需要这样做?

在 Heroku 中,当您选择 python Buildpacks 时,这些变量会自动设置,您可以在您的 dyno 中从 Heroku CLI 运行任何 python 脚本。

于 2020-01-31T00:01:32.770 回答
0

来自作为解决方案提到的博客文章的参考:

在 Heroku 上,您的主目录通常是“/app”。您应该通过运行来确认这一点:

$ heroku run env | grep HOME
HOME=/app

在 Heroku 环境中调整 Python 路径(而不是与应用程序混淆)的一种简单方法是设置 PYTHONPATH env 变量,如下所示:

$ heroku config:add PYTHONPATH=/app

要确认设置正确,请运行:

$ heroku run env | grep PYTHONPATH
PYTHONPATH=/app

现在您可以运行您的自定义管理命令。这也允许您将这些作为 cron(计划)任务运行:

$ heroku run python your_app/manage.py your_custom_command
Success!

请注意,添加(或创建)PythonPath 对大多数 Python 环境都有效,不仅仅是 Heroku,但您需要确定如何为给定的环境添加到它。

一种方法是将PYTHONPATH变量添加到本地用户或系统环境。在 Python 文档中阅读有关PYTHONPATHPYTHONHOME和其他Python 相关环境变量的更多信息。

于 2019-10-27T23:26:04.547 回答
-2

尝试运行 python 时,出现错误 No module named site. 经过一番研究,似乎这是因为这些 PYTHONPATH 和 PYTHONHOME 环境变量设置不正确。

这听起来像是正确的答案。您需要弄清楚这些变量当时具有什么值,它们应该具有什么值,以及您环境中的哪些现有过程这些变量设置为错误的值。

所有这些只能通过检查您的环境来回答,祝您好运:-)

于 2017-04-13T01:25:49.610 回答