Ruff undefined-local-with-nested-import-star-usage (F406)

undefined-local-with-nested-import-star-usage в Ruff проверяет использование глобального импорта (*) вне пространства имен модуля.

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

Использование глобального импорта вне пространства имен модуля (например, внутри функций) может привести к путанице, так как импорт может затенять локальные переменные.

Хотя PEP 8 не рекомендует использовать глобальные импорты, если это необходимо, их следует размещать в пространстве имен модуля (то есть на верхнем уровне модуля).

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

def foo():
    from math import *

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

from math import *

def foo(): ...