4

今天我在 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]

谢谢您的帮助!

4

2 回答 2

3

您的模式似乎很容易使用正则表达式:

import os

var_mask = "env_var_"
for key in os.environ.keys():
    if key.lower().startswith(var_mask):
        del os.environ[key]
于 2013-06-12T16:34:22.350 回答
1

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

于 2013-06-11T22:47:59.820 回答