Instrukcja with w pracy z plikami
Proszę zapewnić automatyczne zamykanie plików za pomocą menedżerów kontekstu.
Instrukcja with w pracy z plikami to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 3 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.
Wprowadzenie
Instrukcja with
# with open('data.txt') as f:
# content = f.read()
# f is now closed
print('with demo')Dlaczego with jest lepsze niż try/finally
# Equivalent to:
# f = open('file.txt')
# try:
# content = f.read()
# finally:
# f.close()
print('comparison demo')Wiele plików
# with open('in.txt') as src, open('out.txt','w') as dst:
# for line in src:
# dst.write(line.upper())
print('multi-file demo')Protokół menedżera kontekstu
# f.__enter__() opens
# f.__exit__() closes
print('protocol demo')Odczyt i przetwarzanie
lines = [' hello \n', ' world \n']
cleaned = [l.strip() for l in lines if l.strip()]
print(cleaned)Zapisywanie za pomocą with
# with open('out.txt', 'w') as f:
# for i in range(10):
# f.write(f'{i}\n')
print('write with demo')Sprawdzanie, czy plik istnieje
import os
print(os.path.exists('/tmp'))
print(os.path.exists('/nonexistent'))Błędy open()
try:
with open('/nonexistent.txt') as f:
pass
except FileNotFoundError as e:
print('File not found:', e)StringIO dla plików w pamięci
from io import StringIO
buf = StringIO('line1\nline2\n')
for line in buf:
print(line.rstrip())Moduł tempfile
import tempfile
with tempfile.NamedTemporaryFile(mode='w', suffix='.txt', delete=True) as f:
f.write('temp data')
print(f.name)Szybkie sprawdzenie
Podsumowanie
Kontynuuj naukę
Często zadawane pytania
Czy lekcja „Instrukcja with w pracy z plikami” jest bezpłatna?
Tak — pełny tekst „Instrukcja with w pracy z plikami” 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 „Instrukcja with w pracy z plikami”?
Proszę zapewnić automatyczne zamykanie plików za pomocą menedżerów kontekstu. Ć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 3 z 4.
Ile czasu zajmuje lekcja „Instrukcja with w pracy z plikami”?
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
- Otwieranie i odczytywanie plików
- Zapisywanie i dopisywanie do plików
- Instrukcja with w pracy z plikami
- Praca ze ścieżkami plików za pomocą pathlib