跳到内容

ambiguous-unicode-character-comment (RUF003)

作用

检查注释中是否有模棱两可的 Unicode 字符。

为什么这不好?

一些 Unicode 字符在视觉上与 ASCII 字符相似,但具有不同的代码点。例如,GREEK CAPITAL LETTER ALPHA (U+0391) 在视觉上与 ASCII 字符 A 相似,但并不相同。

使用歧义 Unicode 字符可能会使读者感到困惑,导致细微的错误,甚至使恶意代码看起来无害。

预览 中,此规则还会标记容易与其他不推荐的 Unicode 字符混淆的 Unicode 字符。例如,规范建议使用 GREEK CAPITAL LETTER OMEGA 而不是 OHM SIGN

您可以通过lint.allowed-confusables设置,从标记为歧义的字符列表中省略某些字符。

示例

foo()  # nоqa  # "о" is Cyrillic (`U+043E`)

建议改为

foo()  # noqa  # "o" is Latin (`U+006F`)

Options (选项)