본문 바로가기
■ 칼퇴를 위한 파이썬 : 사례

파이썬에서 파일 다루기: 입출력 기초

by 포탈메이커 2023. 7. 11.

파이썬에서 파일 다루기: 입출력 기초

소개

파이썬은 간편한 문법과 다양한 라이브러리를 제공하여 파일 다루기 작업을 쉽게 할 수 있습니다. 이번 포스팅에서는 파이썬에서 파일을 읽고 쓰는 기본적인 내용들에 대해 알아보겠습니다.

파일 열기와 닫기

파일을 다루기 위해서는 먼저 파일을 열어야 합니다. open() 함수를 사용하여 파일을 열 수 있으며, 필요에 따라 읽기 모드('r'), 쓰기 모드('w'), 추가 모드('a')를 지정할 수 있습니다. 파일을 열면 해당 파일에 대한 파일 객체가 반환되는데, 이를 활용하여 파일을 다루게 됩니다.

python file = open('파일명', '모드')

파일 작업이 끝나면 close() 메서드를 이용하여 파일을 닫아야 합니다. 파일을 닫지 않으면 파일을 다시 열 수 없고, 파일 작업이 완전히 끝나지 않았을 때 데이터 손실이 발생할 수 있습니다.

python file.close()

간단한 예제를 통해 파일 열기와 닫기를 실습해보겠습니다. example.txt 파일을 생성하고 파일에 내용을 쓴 뒤, 파일을 닫아보겠습니다.

python file = open('example.txt', 'w') file.write('Hello, world!') file.close()

파일 읽기

이번에는 파일을 읽어오는 방법에 대해 알아보겠습니다. 파일을 읽으려면 읽기 모드('r')로 파일을 열면 됩니다. read() 메서드를 사용하여 파일의 내용을 읽어올 수 있습니다.

python file = open('example.txt', 'r') data = file.read() print(data) file.close()

위의 예제에서는 example.txt 파일을 열어 파일의 내용을 읽고, 그 값을 출력하는 코드입니다.

반복문을 이용한 파일 읽기

파일의 크기가 매우 큰 경우, read() 메서드를 사용하면 한 번에 전체 내용을 읽어오기 때문에 메모리 문제가 발생할 수 있습니다. 이를 방지하기 위해 반복문을 사용하여 파일을 조금씩 읽어올 수 있습니다.

python file = open('example.txt', 'r') while True: line = file.readline() if not line: break print(line) file.close()

위의 예제는 파일의 끝까지 한 줄씩 읽어오는 코드입니다. readline() 메서드를 사용하여 파일을 한 줄씩 읽어와 출력합니다. 파일의 모든 내용을 읽었을 경우 반복문을 종료합니다.

파일에 내용 추가하기

기존의 파일 끝에 데이터를 추가하고 싶다면 추가 모드('a')로 파일을 열면 됩니다. 추가 모드로 파일을 열었을 때, write() 메서드로 데이터를 추가할 수 있습니다.

python file = open('example.txt', 'a') file.write('\nNice to meet you!') file.close()

위의 예제는 example.txt 파일의 끝에 새로운 내용을 추가하는 코드입니다.

예외 처리

파일 작업 중에는 예외가 발생할 수 있으므로 예외 처리를 중요하게 생각해야 합니다. 파일을 열거나 내용을 읽는 도중 오류가 발생할 경우 try-except 문을 사용하여 예외를 처리할 수 있습니다.

python try: file = open('example.txt', 'r') data = file.read() print(data) file.close() except FileNotFoundError: print('파일을 찾을 수 없습니다.') except Exception as e: print('오류가 발생했습니다:', e) finally: file.close()

위의 예제에서는 파일을 읽어오는 도중 오류가 발생할 경우, FileNotFoundErrorException을 처리하여 오류 메시지를 출력합니다. 오류 발생 여부와 관계없이 마지막에는 파일을 닫기 위해 finally 블록을 실행합니다.

파일 삭제하기

파일을 삭제할 때는 os 모듈의 remove() 함수를 사용합니다.

```python import os

os.remove('example.txt') ```

위의 예제는 example.txt 파일을 삭제하는 코드입니다.

마무리

이번 포스팅에서는 파이썬에서 파일 다루기의 입출력 기초를 알아보았습니다. 파일을 열고 닫는 방법부터 파일 읽기, 파일에 내용 추가하기, 예외 처리, 파일 삭제하기 등의 기본적인 내용을 다루었습니다. 파일 다루기는 파이썬 프로그래밍에서 자주 사용되므로, 이번 포스팅을 통해 기본적인 개념을 숙지하면 다양한 파일 작업을 수행할 수 있을 것입니다.

더 많은 정보와 상세한 내용은 공식 파이썬 문서를 참고하시기 바랍니다. 감사합니다!