跳到内容

static-key-dict-comprehension (B035)

源自 flake8-bugbear linter。

作用

检查使用了静态键的字典推导式,例如字符串字面量或在推导式外部定义的变量。

为什么这不好?

在字典推导式中使用静态键(例如字符串字面量)通常是一个错误,因为它会导致字典只有一个键,即使推导式迭代了多个值。

示例

data = ["some", "Data"]
{"key": value.upper() for value in data}

建议改为

data = ["some", "Data"]
{value: value.upper() for value in data}