Rozdział 15 · Python i akta

Rozkładanie ścieżki: name, stem, suffix, parent

Ścieżka, podobnie jak każdy obiekt, ma własne atrybuty — i odpowiadają one na konkretne pytania dotyczące pliku.

Dzielimy ścieżkę na części

razbor_puti.py
from pathlib import Path

path = Path("/home/anna/project/data/scores.txt")

print(path.name)     # scores.txt
print(path.stem)     # scores
print(path.suffix)   # .txt
print(path.parent)   # /home/anna/project/data
/home/anna/project/data/scores.txt
parent
/home/anna/project/data
name
scores.txt
stem
scores
suffix
.txt
name = stem + suffix; parent jest folderem nadrzędnym.

Punkt i Dwa Punkty

dot_dotdot.py
from pathlib import Path

print(Path("."))
print(Path(".."))
Nie przesadzaj... /.. /.. /..
Długie łańcuchy .. trudno odczytać i łatwo zepsuć podczas przenoszenia kodu gdzie indziej. Tam, gdzie to możliwe, lepiej używać wyraźnego folderu bazowego (jak BASE_DIR z sekcji 15.7) zamiast kilku .. z rzędu.

Ekspansja to umowa, a nie gwarancja

Sufiks nie gwarantuje formatu zawartości
.txt, .json, .jpg są konwencjami nazw plików, a nie magiczną kontrolą tego, co jest w środku. Plik report.txt technicznie może zawierać wszystko. Nie sprawdzaj formatu treści tylko po rozszerzeniu pliku.
Praktyka: name, stem, suffix, parent
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →