티스토리 뷰

728x90
반응형

파이썬에서 파일 입출력(I/O)은 데이터를 파일로 저장하거나 파일에서 읽어오는 과정을 의미합니다. 파일 입출력을 이해하면 프로그램에서 데이터를 영구적으로 저장할 수 있어 매우 유용합니다. 이번 글에서는 파이썬의 파일 입출력 기본 개념과 방법을 소개하겠습니다.

1. 파일 열기

파일을 사용하기 위해서는 먼저 파일을 열어야 합니다. 파이썬에서는 open() 함수를 사용하여 파일을 열 수 있습니다.

1.1 open() 함수

open() 함수는 파일 이름과 파일 모드를 인자로 받습니다. 파일 모드는 파일을 어떻게 사용할 것인지에 대한 정보를 제공합니다. 주요 모드는 다음과 같습니다:

  • 'r': 읽기 모드 (기본값)
  • 'w': 쓰기 모드 (파일이 없으면 새로 생성, 파일이 있으면 덮어씀)
  • 'a': 추가 모드 (파일이 없으면 새로 생성, 파일이 있으면 끝에 추가)
  • 'b': 이진 모드 (예: 'rb', 'wb')

1.2 예제: 파일 열기

python

# 읽기 모드로 파일 열기
file = open('example.txt', 'r')

2. 파일 읽기

파일을 열었다면, 이제 파일에서 데이터를 읽을 수 있습니다. 파일 읽기 방법에는 여러 가지가 있습니다.

2.1 read()

read() 메서드는 파일의 내용을 모두 읽어옵니다.

python

file = open('example.txt', 'r')
content = file.read()
print(content)  # 파일의 전체 내용 출력
file.close()    # 파일 닫기

2.2 readline()

readline() 메서드는 파일에서 한 줄씩 읽어옵니다.

python

file = open('example.txt', 'r')
line = file.readline()
print(line)  # 첫 번째 줄 출력
file.close()

2.3 readlines()

readlines() 메서드는 파일의 모든 줄을 리스트 형태로 읽어옵니다.

python

file = open('example.txt', 'r')
lines = file.readlines()
print(lines)  # 모든 줄을 리스트로 출력
file.close()

3. 파일 쓰기

파일에 데이터를 쓰려면 쓰기 모드로 파일을 열어야 합니다.

3.1 write()

write() 메서드는 파일에 문자열을 씁니다. 주의할 점은 기존 파일 내용을 덮어쓴다는 것입니다.

python

file = open('example.txt', 'w')
file.write("안녕하세요, 파이썬!\n")
file.write("파일 입출력 기본 강의입니다.")
file.close()

3.2 writelines()

writelines() 메서드는 리스트의 문자열을 파일에 한 번에 씁니다.

python

lines = ["첫 번째 줄\n", "두 번째 줄\n", "세 번째 줄\n"]
file = open('example.txt', 'w')
file.writelines(lines)
file.close()

4. 파일 추가

기존 파일에 데이터를 추가하고 싶다면 추가 모드로 열어야 합니다.

4.1 예제: 파일에 추가하기

python

file = open('example.txt', 'a')
file.write("\n추가된 줄입니다.")
file.close()

5. 파일 닫기

파일을 다 사용한 후에는 반드시 close() 메서드를 사용하여 파일을 닫아야 합니다. 이를 통해 리소스를 해제하고 데이터의 손실을 방지할 수 있습니다.

6. with 문을 사용한 파일 입출력

파일 입출력 시 with 문을 사용하면 파일을 자동으로 닫아주기 때문에 더 안전하고 간편합니다.

6.1 예제: with 문 사용하기

python

with open('example.txt', 'r') as file:
    content = file.read()
    print(content)

이렇게 하면 파일을 열고 작업이 끝난 후 자동으로 파일이 닫힙니다.

728x90
반응형