Python에서 파일에 쓰는 방법(쓰기 및 추가)

Python에서 파일에 텍스트를 쓰는 방법을 알아보세요. 안전한 컨텍스트 관리자를 사용하여 쓰기("w") 모드와 추가("a") 모드 간의 차이점을 마스터하세요.

Editor에서 이 솔루션을 사용해 보세요.

개요

파일에 데이터를 쓰는 것은 스크립트 작성, 프로그램 상태 저장, 로그 생성 또는 보고서 내보내기 시 기본적인 작업입니다. Python은 데이터가 디스크에 기록되는 방식을 제어하는 ​​특정 파일 액세스 모드와 결합된 내장 `open()` 함수를 사용하여 파일 출력을 단순화합니다.

파일을 쓸 때 가장 일반적인 두 가지 모드는 쓰기 모드(`"w"`)와 추가 모드(`"a"`)입니다. 쓰기 모드는 파일이 이미 존재하는 경우 파일 전체를 덮어쓰고, 없는 경우 새 파일을 생성합니다. 추가 모드는 기존 콘텐츠를 보존하고 파일 끝에 직접 새 데이터를 씁니다. 잘못된 모드를 사용하면 실수로 데이터가 손실될 수 있으므로 신중하게 선택하세요.

파일을 읽는 것과 마찬가지로 항상 `with open(...)` 문을 사용해야 합니다. 이렇게 하면 파일 버퍼가 플러시되고 파일 핸들이 제대로 닫혀 시스템 리소스가 절약되고 데이터 손상이 방지됩니다. 문자열 목록을 작성하기 위해 Python은 `.writelines()` 메서드를 제공하여 대량 쓰기를 깔끔하고 효율적으로 만듭니다.

코드 및 실행 출력

이 스크립트는 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.

단계별 구현

  • 파일을 덮어쓰거나 생성하려면 open('filename', 'w')을 파일로 사용하세요.
  • 파일 끝에 텍스트를 추가하려면 open('filename', 'a') 을 파일로 사용하세요.
  • file.write('string')을 호출하여 개별 텍스트 세그먼트를 파일에 씁니다.

자주 묻는 질문

파일 디렉터리가 존재하지 않으면 어떻게 되나요?

Python은 FileNotFoundError를 발생시킵니다. 파일을 작성하기 전에 먼저 os.makedirs 함수를 사용하여 디렉터리를 생성해야 합니다.

변수나 숫자를 파일에 어떻게 쓰나요?

write() 메서드는 문자열 인수만 허용합니다. str(num)을 사용하여 숫자를 캐스팅하거나 f-문자열을 사용하여 형식을 지정해야 합니다.

관련 주제

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.