os.path.isfile(), isdir(), islink(), ismount(), isjunction(), isdevdrive() în Python

Căi (os.path) Python 3.0+ (isjunction: 3.12+, isdevdrive: 3.12+ pe Windows, 3.13+ peste tot)

Verifică ce fel de element se află la o cale: fișier, director, legătură simbolică, punct de montare.

Sintaxă
os.path.isfile(cale)
os.path.isdir(cale)
os.path.islink(cale)
os.path.ismount(cale)

Ce face os.path.isfile(), isdir(), islink(), ismount(), isjunction(), isdevdrive()

isfile() este adevărat pentru fișiere obișnuite, isdir() pentru directoare; ambele urmăresc legăturile simbolice. islink() verifică dacă însăși calea este o legătură simbolică. ismount() verifică dacă este un punct de montare (de exemplu / sau un disc extern).

isjunction() (3.12+) detectează „junction”-urile din Windows, iar isdevdrive() verifică dacă o cale se află pe un Dev Drive Windows. Pe Linux și macOS ambele returnează False. Toate returnează False pentru căi inexistente, fără eroare.

Parametri

Parametru Descriere
cale Calea verificată.

Ce returnează

True sau False.

Exemple

Exemplul 1: Clasificarea elementelor

import os
os.makedirs("poze", exist_ok=True)
open("nota.txt", "w").close()
os.symlink("nota.txt", "scurtatura")
for cale in ["poze", "nota.txt", "scurtatura", "lipsa"]:
    print(f"{cale:11} fișier={os.path.isfile(cale)!s:5} dir={os.path.isdir(cale)!s:5} link={os.path.islink(cale)}")
print(os.path.ismount("/"), os.path.ismount("poze"))
print(os.path.isjunction("poze"), os.path.isdevdrive("poze"))

Rezultat

poze        fișier=False dir=True  link=False
nota.txt    fișier=True  dir=False link=False
scurtatura  fișier=True  dir=False link=True
lipsa       fișier=False dir=False link=False
True False
False False

Greșeli frecvente

  • Folosești isfile() pentru a verifica dacă o cale există. Pentru un director returnează False; folosește exists().

Comenzi înrudite