Ruff manual-dict-comprehension (PERF403)

manual-dict-comprehension в Ruff проверяет код на предупреждение PERF403. Правило относится к группе Perflint.

Почему это неправильно

Такая запись может быть менее производительной или создавать лишнюю работу во время выполнения.

Если валидатор показывает это предупреждение, исправьте место, на которое указывает Ruff, ориентируясь на смысл правила manual-dict-comprehension и пример ниже.

Пример ошибки

pairs = (("a", 1), ("b", 2))
result = {}
for x, y in pairs:
    if y % 2:
        result[x] = y

Как правильно

pairs = (("a", 1), ("b", 2))
result = {x: y for x, y in pairs if y % 2}

Автоисправление

Ruff не предлагает автоисправление для этого правила.