Jak pisać do pliku w Pythonie (zapis i dołączanie)
Dowiedz się, jak zapisywać tekst do plików w Pythonie. Opanuj różnicę między trybami zapisu („w”) i dodawania („a”) dzięki bezpiecznym menedżerom kontekstu.
Przegląd
Zapisywanie danych do plików to podstawowe zadanie podczas budowania skryptów, zapisywania stanów programów, tworzenia logów czy eksportowania raportów. Python upraszcza tworzenie plików za pomocą wbudowanej funkcji „open()” w połączeniu z określonymi trybami dostępu do plików, które kontrolują sposób zapisywania danych na dysku.
Podczas zapisywania plików dwa najczęstsze tryby to tryb zapisu („w”) i tryb dodawania („a”). Tryb zapisu całkowicie nadpisuje plik, jeśli już istnieje, lub tworzy nowy, jeśli tak nie jest. Tryb dołączania zachowuje istniejącą zawartość i zapisuje nowe dane bezpośrednio na końcu pliku. Korzystanie z niewłaściwego trybu może prowadzić do przypadkowej utraty danych, dlatego wybieraj ostrożnie.
Podobnie jak w przypadku czytania plików, powinieneś zawsze używać instrukcji `with open(...)`. Zapewnia to opróżnienie bufora plików i prawidłowe zamknięcie uchwytu pliku, oszczędzając zasoby systemowe i zapobiegając uszkodzeniu danych. Do pisania list ciągów Python udostępnia metodę `.writelines()`, dzięki której zbiorcze zapisy są przejrzyste i wydajne.
Dane wyjściowe kodu i wykonania
Ten skrypt demonstruje nadpisywanie, dołączanie i przeglądanie plików w języku Python.
# 1. Overwrite a file (or create new) using "w"
with open("output.txt", "w") as file:
file.write("Hello World from Python!\n")
file.write("Writing file content is simple.\n")
# 2. Append new content to the file using "a"
with open("output.txt", "a") as file:
file.write("This line is appended.\n")
# 3. Reading the file back to verify contents
with open("output.txt", "r") as file:
print(file.read().strip())Hello World from Python!
Writing file content is simple.
This line is appended.Wdrażanie krok po kroku
- Użyj z open('nazwa pliku', 'w') jako pliku, aby zastąpić lub utworzyć plik.
- Użyj z open('nazwa pliku', 'a') jako pliku, aby dodać tekst na końcu pliku.
- Wywołaj file.write('string'), aby zapisać pojedyncze segmenty tekstu do pliku.
Często zadawane pytania
Co się stanie, jeśli katalog pliku nie istnieje?
Python zgłosi błąd FileNotFoundError. Przed zapisaniem pliku musisz najpierw utworzyć katalog za pomocą funkcji os.makedirs.
Jak zapisać zmienne lub liczby do pliku?
Metoda write() akceptuje tylko argumenty w postaci łańcuchów. Musisz rzucać liczby za pomocą str(num) lub formatować je za pomocą f-stringów.
Powiązane tematy
Naucz się czytać pliki w Pythonie. Opanuj obsługę instrukcji open, readline, readlines i bezpiecznej obsługi wyjątków plików.
Jak obsługiwać wyjątki w PythonieDowiedz się, jak obsługiwać wyjątki w Pythonie za pomocą bloków try, z wyjątkiem, else i wreszcie. Napisz bezbłędny i odporny na awarie kod w Pythonie.
Polecane zasoby Pythona
Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.
We/wy plików w języku Python
Dowiedz się, jak czytać i zapisywać pliki w Pythonie. Opanuj menedżery open(), read(), write() i kontekstu, aby bezpiecznie obsługiwać operacje na plikach bez wycieków zasobów.
Ściągawka dotycząca operacji na plikach w Pythonie
Skrócona instrukcja czytania i zapisywania plików w Pythonie. Opanuj tryby otwarte, menedżery kontekstu i czytanie linia po linii.
Dekoratory Pythona a wzorzec projektowy dekoratora: kluczowe różnice
Porównaj dekoratory Pythona z klasycznym wzorcem projektowym dekoratora. Zrozum różnice między zawijaniem funkcji w czasie definicji a dynamiczną kompozycją obiektów w czasie wykonywania z możliwym do uruchomienia kodem.