小编MrC*_*ood的帖子

在错误处理期间使用字典理解中的变量是否安全?

考虑以下示例:

config_parameters = ['PARAM1', 'PARAM2', 'PARAM3']
sample_config = {
    'PARAM1': 'Value1',
    'PARAM2': 'Value2'
}

try:
    # Collects param values from the sample config
    config = {k: sample_config[k] for k in config_parameters}
except KeyError as e:
    # Tries using comprehension var `k` to advise which variable was missing
    raise KeyError(f'Value: "{k}" missing from config file.')
Run Code Online (Sandbox Code Playgroud)

在错误处理中,它尝试捕获使用字典理解的严格字典查找步骤中出现的关键错误。对于任何捕获的错误,它会尝试利用在字典理解期间分配的变量。

这对于 Python 来说是否被认为是安全的,或者是否有任何理由预期它k可能不会指示导致错误的相同值?

python

1
推荐指数
1
解决办法
47
查看次数

标签 统计

python ×1