본문으로 바로가기
검색
회원가입로그인

파일 처리 및 입력/출력

파일 입출력을 배우기

파일 입출력은 파이썬 프로그램이 외부 파일에서 데이터를 읽고, 새로운 데이터를 파일로 저장하는 아주 중요한 기능입니다. 이 장에서는 텍스트 파일을 다루는 방법부터 시작하여, 파일을 열고 데이터를 읽고 쓰는 기본적인 과정을 설명하겠습니다.

파일 열기, 읽기, 쓰기 과정

파일을 다루는 3단계는 다음과 같습니다.

  1. 파일 열기: open() 함수를 사용하여 파일을 엽니다. 파일을 열 때는 모드를 지정해야 합니다.

    • 읽기 모드(r): 파일을 읽기만 할 수 있습니다.

    • 쓰기 모드(w): 파일에 데이터를 작성할 수 있습니다. 파일이 없으면 새로 만듭니다.

    • 추가 모드(a): 파일의 끝에 데이터를 추가합니다.

예를 들면:

file = open('example.txt', 'w')
file.write('Hello, Python!\nWelcome to file handling.')
file.close()
  1. 파일 작업하기: 파일 객체를 이용하여 데이터를 읽거나 씁니다.

    • 읽기 작업: file.read()file.readline()을 사용할 수 있습니다.

    • 쓰기 작업: file.write()를 통해 텍스트를 파일에 작성합니다.

예를 들면:

file = open('example.txt', 'r')
content = file.read()
print(content)
file.close()
  1. 파일 닫기: 작업이 끝나면 file.close()를 호출하여 파일을 닫아야 합니다.

with 문과 파일 자동 닫기

파일을 다루는 과정에서 실수로 파일을 닫지 않는 경우를 방지하기 위해 with문을 사용할 수 있습니다.

with open('example.txt', 'w') as file:
    file.write('Using with statement.')

위와 같이 작성하면 with문 종료 시 파일이 자동으로 닫힙니다.

CSV 파일 다루기

CSV 파일은 데이터 저장과 관리에 자주 사용됩니다. CSV 파일을 다룰 때는 csv 모듈을 많이 사용합니다.

import csv

with open('data.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerow(['Name', 'Age'])
    writer.writerow(['Alice', 30])

csv.writer를 사용하면 CSV 양식으로 데이터를 파일에 작성할 수 있습니다.

결론

파일 입출력은 데이터를 외부에서 읽어와 프로그램에서 처리하거나, 처리가 끝난 데이터를 영구적으로 저장하는 중요한 방식입니다. 이번 장에서 배운 파일 다루기 기법을 응용하여 다양한 프로젝트에서 활용해보세요.

참고 자료