ruff icon indicating copy to clipboard operation
ruff copied to clipboard

new check: suggest to iterate over dict.values() instead if items() if

Open spaceone opened this issue 2 years ago • 2 comments

B007 unused-loop-control-variable revealed and fixed code like:

-               for k, v in self.validation_errors.items():
+               for _k, v in self.validation_errors.items():
                        num += v.number_of_errors()

a new checker could make it even better:

-               for k, v in self.validation_errors.items():
+               for v in self.validation_errors.values():
                        num += v.number_of_errors()

spaceone avatar Jan 26 '23 17:01 spaceone

Some classes such as xml.etree.elementtree.Element support items but not values.

andersk avatar Jan 26 '23 22:01 andersk

It would be an aggressive rule.

JonathanPlasse avatar Jan 27 '23 09:01 JonathanPlasse

This is being implemented as part of perflint (#4789)

dhruvmanila avatar Jun 10 '23 16:06 dhruvmanila

I believe we now support this via PERF102.

charliermarsh avatar Jul 10 '23 01:07 charliermarsh