跳到内容

sys-version0 (YTT301)

源自 flake8-2020 linter。

作用

检查 sys.version[0] 的使用情况。

为什么这不好?

如果当前主版本号或次版本号包含多个数字,则 sys.version[0] 将仅选择主版本号的第一个数字(例如,"10.2" 将评估为 "1")。这可能不是预期行为,并且如果版本字符串用于测试主版本号,则可能导致细微的错误。

相反,请使用 sys.version_info.major 来访问当前主版本号。

示例

import sys

sys.version[0]  # If using Python 10, this evaluates to "1".

建议改为

import sys

f"{sys.version_info.major}"  # If using Python 10, this evaluates to "10".

参考