在循环中取消设置环境变量

时间:2013-06-11 22:41:09

标签: python environment-variables

今天我在Python中遇到了一个问题,我必须取消设置许多匹配特定模式的环境变量。现在我想知道哪个是pythonic方式。我在网上寻找答案,但我找不到令人满意的答案。

更新

在我准备一个例子时,我自己找到了答案。有没有更好的方法呢?

import os
import re

regex = re.compile(r'^(env_var_)(.*?)$', re.IGNORECASE)
for key in os.environ.keys():
    if regex.match(key):
        del os.environ[key]

感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

使用正则表达式时,您的模式看起来非常简单:

import os

var_mask = "env_var_"
for key in os.environ.keys():
    if key.lower().startswith(var_mask):
        del os.environ[key]

答案 1 :(得分:1)

os.environ提供表示环境的映射。从中删除(使用del语句)将修改环境。