목차
- 서론
- 파일 열기와 닫기
- 파일 열기
- 파일 닫기
- 파일 쓰기
- 텍스트 파일 쓰기
- 여러 줄 쓰기
- 파일 읽기
- 텍스트 파일 읽기
- 파일 전체 읽기
- 파일 한 줄씩 읽기
- 파일 입출력 모드
- with문을 사용한 파일 입출력
- 실습 예제
- 마무리
- 추천 태그
1. 서론
파일 입출력은 프로그래밍에서 매우 중요한 부분입니다. Python에서는 파일을 읽고 쓰는 작업을 간단하고 직관적으로 수행할 수 있습니다. 이번 포스팅에서는 초보 개발자도 쉽게 이해할 수 있도록 Python의 파일 입출력 방법을 자세히 설명하겠습니다.
2. 파일 열기와 닫기
2.1 파일 열기
Python에서 파일을 열기 위해서는 open()
함수를 사용합니다. open()
함수는 두 개의 인자를 받습니다: 파일 이름과 모드입니다.
# 파일 열기 예제
file = open("example.txt", "w")
2.2 파일 닫기
파일을 다 사용한 후에는 반드시 close()
메소드를 사용하여 파일을 닫아야 합니다. 파일을 닫지 않으면 데이터 손실이나 메모리 누수가 발생할 수 있습니다.
# 파일 닫기 예제
file.close()
3. 파일 쓰기
3.1 텍스트 파일 쓰기
파일을 쓰기 모드("w")로 열고, write()
메소드를 사용하여 텍스트를 파일에 쓸 수 있습니다.
# 텍스트 파일 쓰기 예제
file = open("example.txt", "w")
file.write("Hello, Python!")
file.close()
3.2 여러 줄 쓰기
여러 줄을 파일에 쓰기 위해서는 write()
메소드를 여러 번 호출하거나, writelines()
메소드를 사용할 수 있습니다.
# 여러 줄 쓰기 예제
file = open("example.txt", "w")
lines = ["Hello, Python!\n", "Welcome to file handling in Python.\n"]
file.writelines(lines)
file.close()
4. 파일 읽기
4.1 텍스트 파일 읽기
파일을 읽기 모드("r")로 열고, read()
메소드를 사용하여 파일의 내용을 읽을 수 있습니다.
# 텍스트 파일 읽기 예제
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
4.2 파일 전체 읽기
read()
메소드를 사용하여 파일의 전체 내용을 문자열로 읽어들일 수 있습니다.
# 파일 전체 읽기 예제
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
4.3 파일 한 줄씩 읽기
readline()
메소드를 사용하여 파일의 내용을 한 줄씩 읽을 수 있습니다.
# 파일 한 줄씩 읽기 예제
file = open("example.txt", "r")
line = file.readline()
while line:
print(line, end='') # 줄바꿈 없이 출력
line = file.readline()
file.close()
5. 파일 입출력 모드
open()
함수는 다양한 모드를 지원합니다.
"r"
: 읽기 모드"w"
: 쓰기 모드 (파일이 없으면 새로 생성, 파일이 있으면 내용 삭제)"a"
: 추가 모드 (파일 끝에 내용을 추가)"b"
: 바이너리 모드 (이진 파일 읽기/쓰기)"r+"
: 읽기/쓰기 모드
예제:
# 추가 모드 예제
file = open("example.txt", "a")
file.write("Appending new line.\n")
file.close()
6. with문을 사용한 파일 입출력
with
문을 사용하면 파일을 열고 닫는 작업을 자동으로 처리할 수 있어 코드가 간결해지고 안전합니다.
# with문을 사용한 파일 쓰기 예제
with open("example.txt", "w") as file:
file.write("Hello, Python with with statement!")
# with문을 사용한 파일 읽기 예제
with open("example.txt", "r") as file:
content = file.read()
print(content)
7. 실습 예제
파일 복사 프로그램
하나의 파일에서 다른 파일로 내용을 복사하는 프로그램을 작성해보겠습니다.
# 파일 복사 예제
source_file = "example.txt"
destination_file = "copy_example.txt"
with open(source_file, "r") as src:
with open(destination_file, "w") as dest:
content = src.read()
dest.write(content)
print(f"{source_file}의 내용이 {destination_file}로 복사되었습니다.")
파일에서 특정 단어 찾기
파일에서 특정 단어가 몇 번 등장하는지 세는 프로그램을 작성해보겠습니다.
# 특정 단어 찾기 예제
word_to_find = "Python"
count = 0
with open("example.txt", "r") as file:
for line in file:
words = line.split()
count += words.count(word_to_find)
print(f"'{word_to_find}' 단어가 {count}번 등장합니다.")
8. 마무리
이번 포스팅에서는 Python에서 파일을 읽고 쓰는 방법에 대해 알아보았습니다. 파일 입출력은 데이터 저장 및 처리에 필수적인 기능이므로, 다양한 예제를 통해 익숙해지시기 바랍니다. 다음 포스팅에서는 더 심화된 Python 주제를 다룰 예정입니다.
이 포스팅이 Python을 처음 접하는 분들에게 도움이 되길 바랍니다.