【问题标题】:Python - os.getenv works in command prompt, but not in jupyter notebook? (Windows)Python - os.getenv 在命令提示符下工作,但在 jupyter 笔记本中不工作? (视窗)
【发布时间】:2021-08-27 12:23:15
【问题描述】:

我最近在 Windows 10 中通过“编辑系统环境变量”添加了一个新的系统环境变量。如果我在 Windows 命令提示符下激活 python 并执行

>>>import os
>>>os.getenv('newvar')

它正确地返回值。但是,如果我去 Anaconda Prompt 并在 jupyter 笔记本中做同样的事情,我会得到“无”。然而,其他变量也起作用。如何使这个新环境变量在 Anaconda 中可见?

【问题讨论】:

    标签: python jupyter-notebook anaconda environment-variables


    【解决方案1】:

    如果您在进行更改之前启动了 Jupyter 内核,则该环境变量在 Jupyter 中可能不可用。以下序列有时会引起我的注意:

    1. 您有一个始终在后台运行的 Jupyter 内核。
      1. Jupyter 内核在首次启动时获取其 ENV 变量。
    2. 您向系统或用户 ENV 变量添加一些内容。
    3. 您打开一个 CMD 窗口,它会加载最新的 ENV 变量并且您的新变量可用。
    4. 您打开一个 Jupyter 笔记本,它使用 #1 中的 ENV 变量(不包含您的最新更改)。

    【讨论】:

    • 现在知道了,在更改之前我没有启动 jupyter,但我确实启动了 Anaconda 提示符。重置我的电脑后它现在可以工作了(我应该先尝试一下,哈哈......)谢谢!
    • 很高兴你得到它!是的,Jupyter 从 Anaconda Prompt 继承了 ENV 变量(它在第一次启动时得到了它们)。欢迎使用 StackOverflow,如果对您有帮助,请记得采纳答案!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-17
    • 1970-01-01
    • 1970-01-01
    • 2016-12-06
    • 2019-12-11
    • 1970-01-01
    • 2017-03-15
    相关资源
    最近更新 更多