Ruff os-sep-split (PTH206)

os-sep-split в Ruff проверяет код на предупреждение PTH206. Правило относится к группе flake8-use-pathlib.

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

pathlib делает работу с путями выразительнее и переносимее, чем ручная сборка строк или старые функции os.path.

Если валидатор показывает это предупреждение, исправьте место, на которое указывает Ruff, ориентируясь на смысл правила os-sep-split и пример ниже.

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

import os

"path/to/file_name.txt".split(os.sep)[-1]

"path/to/file_name.txt".split(os.sep)[-2]

# Iterating over the path parts
if any(part in blocklist for part in "my/file/path".split(os.sep)):
    ...

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

from pathlib import Path

Path("path/to/file_name.txt").name

Path("path/to/file_name.txt").parent.name

# Iterating over the path parts
if any(part in blocklist for part in Path("my/file/path").parts):
    ...

Автоисправление

Ruff не предлагает автоисправление для этого правила.