Ruff sys-version-slice1 (YTT303)

sys-version-slice1 в Ruff проверяет использование sys.version[:1].

Почему это неправильно

Если номер основной версии состоит более чем из одной цифры, выражение sys.version[:1] выбирает только первую цифру основной версии (например, «10.0» превратится в «1»). Это, скорее всего, непреднамеренно и может привести к трудноуловимым ошибкам в будущих версиях Python, если строка версии используется для проверки на конкретную основную версию.

Вместо этого используйте sys.version_info.major для доступа к текущему номеру мажорной версии.

Пример ошибки

import sys

sys.version[:1]  # Если используется Python 10, это равно "1".

Как правильно

import sys

f"{sys.version_info.major}"  # Если используется Python 10, это равно "10".