跳到内容

explicit-f-string-type-conversion (RUF010)

有时提供修复。

作用

检查在 f-string 中使用 str()repr()ascii() 作为显式类型转换的情况。

为什么这不好?

f-strings 支持这些类型的专用转换标志,这些标志更简洁且符合习惯用法。

请注意,在许多情况下,在 f-string 中调用 str() 是不必要的,并且可以完全删除,因为该值将自动转换为字符串,值得注意的例外是对于实现自定义 __format__ 方法的类。

示例

a = "some string"
f"{repr(a)}"

建议改为

a = "some string"
f"{a!r}"