Skip to content

os-path-islink (PTH114)#

Derived from the flake8-use-pathlib linter.

What it does#

Checks for uses of os.path.islink.

Why is this bad?#

pathlib offers a high-level API for path manipulation, as compared to the lower-level API offered by os. When possible, using Path object methods such as Path.is_symlink() can improve readability over the os module's counterparts (e.g., os.path.islink()).

Note that os functions may be preferable if performance is a concern, e.g., in hot loops.

Examples#

import os

os.path.islink("docs")

Use instead:

from pathlib import Path

Path("docs").is_symlink()

References#