Derived from the flake8-bugbear linter.
Fix is always available.
What it does#
Checks for uses of
setattr that take a constant attribute value as an
setattr(obj, "foo", 42)).
Why is this bad?#
setattr is used to set attributes dynamically. If the attribute is
defined as a constant, it is no safer than a typical property access. When
possible, prefer property access over
setattr calls, as the former is
more concise and idiomatic.