0Pricing
Python Academy · Lekcja

Operacje na ścieżkach

Łącz, rozwiązuj i analizuj ścieżki

Operacje na ścieżkach to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 4 lekcji w sumie.

Sprawdzanie i przekształcanie ścieżek

Oprócz tworzenia ścieżek pathlib umożliwia przekształcanie ich do postaci bezwzględnej, sprawdzanie relacji między nimi oraz odczytywanie metadanych systemu plików — wszystko to bez używania os.path.

Ścieżki bezwzględne a względne

is_absolute() informuje, czy ścieżka jest zakotwiczona w katalogu głównym. Ścieżki względne są interpretowane względem bieżącego katalogu.

from pathlib import Path

print(Path('docs/file.txt').is_absolute())
print(Path('/usr/local').is_absolute())

Rozwiązywanie ścieżki

resolve() przekształca ścieżkę w ścieżkę bezwzględną oraz upraszcza segmenty . i ... Jest podstawową metodą normalizowania ścieżek.

from pathlib import Path

p = Path('a/b/../c/file.txt')
print(p.resolve())

Łączenie za pomocą joinpath

Oprócz operatora / metoda joinpath() dołącza jeden lub więcej elementów. Jest przydatna, gdy elementy pochodzą z listy.

from pathlib import Path

base = Path('project')
parts = ['src', 'main', 'app.py']
print(base.joinpath(*parts))

Ścieżka względna między dwiema lokalizacjami

relative_to() wyznacza ścieżkę jednej lokalizacji względem innej. Zgłasza wyjątek, jeśli ścieżka nie znajduje się w podanej ścieżce bazowej.

from pathlib import Path

full = Path('/home/user/docs/report.txt')
rel = full.relative_to('/home/user')
print(rel)

Sprawdzanie prefiksu za pomocą is_relative_to

is_relative_to() bezpiecznie sprawdza, czy jedna ścieżka znajduje się pod inną, zwracając wartość boolowską zamiast zgłaszać wyjątek.

from pathlib import Path

p = Path('/home/user/docs/file.txt')
print(p.is_relative_to('/home/user'))
print(p.is_relative_to('/etc'))

Wiele rozszerzeń

W przypadku nazw takich jak archive.tar.gz właściwość suffixes zawiera listę wszystkich rozszerzeń, natomiast suffix zwraca tylko ostatnie z nich.

from pathlib import Path

p = Path('archive.tar.gz')
print(p.suffix)
print(p.suffixes)

Kotwica i dysk

Właściwość anchor zawiera główny element ścieżki. W systemach POSIX jest to zazwyczaj /, natomiast w systemie Windows obejmuje ona literę dysku.

from pathlib import Path

p = Path('/usr/local/bin')
print('anchor:', p.anchor)
print('parts:', p.parts)

Odczytywanie metadanych pliku

stat() zwraca metadane systemu plików, takie jak rozmiar wyrażony w bajtach. W tym przykładzie tworzymy plik i odczytujemy jego rozmiar.

from pathlib import Path

p = Path('meta.txt')
p.write_text('hello world')
print('size:', p.stat().st_size, 'bytes')

Zmienianie nazw i przenoszenie

rename() zmienia lokalizację lub nazwę ścieżki. W połączeniu z metodami tworzenia ścieżek pozwala zwięźle reorganizować pliki.

from pathlib import Path

old = Path('old_name.txt')
old.write_text('data')
new = old.with_name('new_name.txt')
old.rename(new)
print(new.exists(), new.read_text())

Rozwijanie skrótu katalogu domowego

expanduser() zastępuje początkowy znak ~ katalogiem domowym użytkownika, naśladując sposób, w jaki rozwija go powłoka.

from pathlib import Path

p = Path('~/configs/app.ini')
expanded = p.expanduser()
print(expanded.is_absolute())

Szybkie sprawdzenie

Co metoda resolve() robi ze ścieżką?

Podsumowanie

Poznali Państwo sposoby łączenia, rozwiązywania i sprawdzania ścieżek.

  • resolve tworzy bezwzględną, znormalizowaną ścieżkę.
  • relative_to i is_relative_to porównują lokalizacje.
  • suffix, suffixes, anchor i parts ujawniają strukturę ścieżki.
  • stat odczytuje metadane, a rename przenosi pliki.

Często zadawane pytania

Czy lekcja „Operacje na ścieżkach” jest bezpłatna?

Tak — pełny tekst „Operacje na ścieżkach” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Operacje na ścieżkach”?

Łącz, rozwiązuj i analizuj ścieżki Ćwiczysz Python Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Python Academy?

Nie wymagamy żadnego doświadczenia. Python Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Operacje na ścieżkach”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Python Academy?

Tak. Każda lekcja Python Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Obiekt Path
  2. Odczyt i zapis plików
  3. Wzorce glob i iterowanie
  4. Operacje na ścieżkach
← Powrót do Python Academy