You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何区分预定义与启动时定义的环境变量并记录启动命令?

背景

为便于解释,我们定义两种环境变量(需说明现实中并无此区分):

  • 「预定义变量」:脚本启动时已存在于环境中的变量;
  • 「启动时定义的变量」:在脚本调用行内定义的变量,仅适用于启动脚本时创建的进程环境。

示例如下:

预定义变量

export var1="value1"
export var2="value2"
# ... more commands
# Now var1 and var3 are in the python process' environment
python script.py args

启动时定义的变量

var1="value1" var2="value2" python script.py args

问题描述

我可以通过os.environ在Python脚本中访问环境变量,但希望能在代码中区分「预定义变量」和「启动时定义的变量」。

我的使用场景是:当通过var1="value1" var2="value2" python script.py args这种方式启动脚本时,希望记录shell提示符中输入的完整命令,包括:

  • 脚本名称
  • 脚本参数
  • 命令前定义的环境变量(var1和var2)

前两项可通过sys.argv实现,但目前无法区分预定义变量与启动时定义的var1、var2。


补充说明

添加了背景内容以明确需求。

内容的提问来源于stack exchange,提问作者IvanProsperi94

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 04:20:17