Python 是否会在脚本末尾自动取消设置环境变量?
Does Python automatically unset environmental variables at the end of the script?
假设在您的 Python 脚本(这是一个进程)中创建了一个环境变量。环境变量的生命周期是否与脚本运行时的生命周期相同?我已经设置了我的环境变量和 运行 我的 Python 代码直到完成,如果我尝试做
echo $MY_CREATED_ENV_VAR
它returns 是空的。我知道我的脚本创建了这个环境变量,因为我可以在脚本本身中使用它。
这是脚本的一部分
import os
os.environ['MY_CREATED_ENV_VAR'] = "1"
# Returns-> MY_CREATED_ENV_VAR = 1 (and usable by other processes in the script)
print("MY_CREATED_ENV_VAR = " + os.environ["MY_CREATED_ENV_VAR"])
# Script ends
MY_CREATED_ENV_VAR 会自动取消设置吗?如果没有,我将如何在脚本中手动取消设置此环境变量以清理我的代码?
提前致谢!
编辑:
我看到你可以取消设置变量,但我的问题仍然存在,python 会自动取消设置环境变量吗?脚本执行完毕后,我无法在终端中回显 env 变量。
环境变量仅可用于子进程,而不是生成 Python 程序的父进程(或 python 脚本完成后的并行进程 运行),因此,它被清理只是因为它超出了范围。
del os.environ['MY_CREATED_ENV_VAR']
将删除它,但
假设在您的 Python 脚本(这是一个进程)中创建了一个环境变量。环境变量的生命周期是否与脚本运行时的生命周期相同?我已经设置了我的环境变量和 运行 我的 Python 代码直到完成,如果我尝试做
echo $MY_CREATED_ENV_VAR
它returns 是空的。我知道我的脚本创建了这个环境变量,因为我可以在脚本本身中使用它。
这是脚本的一部分
import os
os.environ['MY_CREATED_ENV_VAR'] = "1"
# Returns-> MY_CREATED_ENV_VAR = 1 (and usable by other processes in the script)
print("MY_CREATED_ENV_VAR = " + os.environ["MY_CREATED_ENV_VAR"])
# Script ends
MY_CREATED_ENV_VAR 会自动取消设置吗?如果没有,我将如何在脚本中手动取消设置此环境变量以清理我的代码?
提前致谢!
编辑: 我看到你可以取消设置变量,但我的问题仍然存在,python 会自动取消设置环境变量吗?脚本执行完毕后,我无法在终端中回显 env 变量。
环境变量仅可用于子进程,而不是生成 Python 程序的父进程(或 python 脚本完成后的并行进程 运行),因此,它被清理只是因为它超出了范围。
del os.environ['MY_CREATED_ENV_VAR']
将删除它,但