Rozdział 15 · Python i akta
Utwórz nowe pliki
Zapisz dane na dysku i zapoznaj się z nowoczesnym sposobem pracy ze ścieżkami.
Utwórz nowe pliki
Aby coś nagrać do pliku, otwórz go w trybie nagrywania
"w" (write) – jeśli plik nie istnieje, Python sam go utworzy;
jeśli istnieje, jego wcześniejsza zawartość jest usuwana już w momencie otwarcia,
Nawet przed pierwszym write():
zapis_fajla.py
with open("rezultaty.txt", "w", encoding="utf-8") as file:
file.write(„Poziom 1: 100 punktów\n”)
file.write(„Poziom 2: 250 punktów\n”)
Wcześniej
Poziom 1: 50 punktów (stara gra)
open(..., "w")
→Po otwarciu w
(pusty plik)
Praca z plikami
Trzy główne tryby otwierania plików:
"r"- Odczyt (read) błąd, jeśli plik nie istnieje."w"- Zapis (write); tworzy nowy plik lub całkowicie usuwa istniejący natychmiast po otwarciu."a"jest dodatkiem (append); dodaje tekst na końcu pliku bez wymazując to, co już tam jest.
dozapis.py
with open("rezultaty.txt", "a", encoding="utf-8") as file:
file.write(„Poziom 3: 400 punktów\n”)
"a" to nie jest "wstaw gdzie chcę"
Nadpisywanie zawsze dodaje tekst na koniec pliku. Nie może wstawiać tekstu w środku lub na początku istniejącej treści.
Ścieżki do plików: łańcuch znaków lub pathlib
Ścieżka do pliku: zwykła łańcuch znaków → pathlib
Klasyczne podejście
file_path = "data/rezultaty.txt"
with open(file_path, "r", encoding="utf-8") as f:
print(f.read())
Nowoczesne Python (pathlib)
from pathlib import Path
file_path = Path("data") / "rezultaty.txt"
print(file_path.exists()) #convenient metody, swoją drogą
with file_path.open("r", encoding="utf-8") as f:
print(f.read())
Co używać dzisiaj:
pathlib dla ścieżek plików — pojawiła się w Python 3.4 i od tego czasu jest uważana za preferowaną metodę. Ścieżki łańcuch znaków są nadal powszechne i występują w starszym kodzie, ale pathlib eliminuje konieczność ręcznego montażu gąsienic przez + i dodaje przydatne metody takie jak .exists() tuż obok toru. Przeanalizujmy to szczegółowo w sekcji 15.8.Praktyka: nagrania, dodatkowe nagrania i pathlib
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji