Ruff percent-format-expected-mapping (F502)
percent-format-expected-mapping в Ruff проверяет использование именованных заполнителей в строковых форматах printf без значений типа отображения.
Почему это неправильно
При использовании именованных заполнителей в строках формата printf значения должны быть типа "mapping" (например, словарём). В противном случае выражение вызовет TypeError.
Пример ошибки
"%(greeting)s, %(name)s" % ("Hello", "World")
Как правильно
"%(greeting)s, %(name)s" % {"greeting": "Hello", "name": "World"}
Или:
"%s, %s" % ("Hello", "World")