跳到内容

sys-version2 (YTT102)

源自 flake8-2020 linter。

作用

检查对 sys.version[2] 的使用。

为什么这不好?

如果当前主版本号或次版本号由多个数字组成,则 sys.version[2] 将仅选择次版本号的第一位数字(例如,"3.10" 将评估为 "1")。这很可能是无意的,并且如果该版本用于针对次版本号进行测试,则可能导致细微的错误。

相反,请使用 sys.version_info.minor 来访问当前的次版本号。

示例

import sys

sys.version[2]  # Evaluates to "1" on Python 3.10.

建议改为

import sys

f"{sys.version_info.minor}"  # Evaluates to "10" on Python 3.10.

参考