4. 파일 입출력
파일 처리는 프로그래밍에서 중요한 부분입니다. 파이썬에서 파일을 읽고 쓰는 방법을 배우면 데이터 저장 및 불러오기 등 다양한 작업을 수행할 수 있습니다.
4.1. 파일 열기와 닫기
파일을 열 때는 open() 함수를 사용합니다. 이 함수는 파일 이름과 모드를 인수로 받아 파일 객체를 반환합니다. 파일 모드는 읽기 모드(r), 쓰기 모드(w), 추가 모드(a), 바이너리 읽기 모드(rb), 바이너리 쓰기 모드(wb) 등이 있습니다.
파일 작업을 마친 후에는 close() 메서드를 호출하여 파일을 닫아야 합니다. 그렇지 않으면 데이터 손실이나 다른 문제가 발생할 수 있습니다.
예제 코드
file = open("example.txt", "r") # 읽기 모드로 파일 열기
# 파일 처리 작업
file.close() # 파일 닫기
4.2. 파일 읽기와 쓰기
파일에서 데이터를 읽거나 쓰려면 다양한 메서드를 사용할 수 있습니다. read() 메서드는 파일의 전체 내용을 문자열로 반환합니다. readline() 메서드는 한 줄씩 읽어 문자열로 반환하며, readlines() 메서드는 파일의 모든 줄을 문자열 리스트로 반환합니다.
파일에 데이터를 쓰려면 write() 메서드를 사용합니다. 이 메서드는 문자열을 파일에 씁니다. 여러 줄을 한 번에 쓰려면 writelines() 메서드를 사용하면 됩니다. 이 메서드는 문자열 리스트를 파일에 씁니다.
예제 코드
# 파일 쓰기
file = open("example.txt", "w")
file.write("Hello, World!\n")
file.writelines(["Line 1\n", "Line 2\n"])
file.close()
# 파일 읽기
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
# 파일의 각 줄을 읽기
file = open("example.txt", "r")
lines = file.readlines()
for line in lines:
print(line.strip())
file.close()
4.3. with문 활용
파일을 다룰 때 with 문을 사용하면 코드가 간결해지며, 파일을 닫는 것을 잊을 걱정이 없습니다. with 문은 파일이 자동으로 닫히도록 해 줍니다.
예제 코드
with open("example.txt", "r") as file:
content = file.read()
print(content)
# 파일이 자동으로 닫힘
또한, 파일을 여러 개 열 때도 with 문을 사용하여 간편하게 처리할 수 있습니다.
예제 코드
with open("input.txt", "r") as input_file, open("output.txt", "w") as output_file:
for line in input_file:
output_file.write(line.upper())
# 두 파일이 모두 자동으로 닫힘
이제 파이썬에서 파일 입출력을 다루는 방법에 대해 알아보았습니다. 이를 활용하여 프로그램이 실행되는 동안 데이터를 저장하고, 나중에 다시 불러올 수 있습니다. 이렇게 하면 사용자가 입력한 데이터나 프로그램이 생성한 결과를 영구적으로 보관하고 활용할 수 있습니다.
파일 입출력을 사용하는 실습을 통해 더욱 숙련된 파이썬 프로그래머가 되어 보세요. 이번 장에서 배운 내용을 다양한 프로젝트에 적용할 수 있습니다. 예를 들어, 로그 파일을 분석하여 정보를 추출하거나, 사용자 설정을 저장하고 불러오는 애플리케이션을 만들 수 있습니다.
2023.05.03 - [프로그래밍/파이썬(Python) 기초부터 ~] - [파이썬(PYTHON)] 함수와 모듈
'GD's IT Lectures : 기초부터 시리즈 > 파이썬(Python) 기초부터 ~' 카테고리의 다른 글
[파이썬(PYTHON)] 기본적인 자료구조 - 리스트 (0) | 2023.05.03 |
---|---|
[파이썬(PYTHON)] 에러 처리와 예외 처리 (0) | 2023.05.03 |
[파이썬(PYTHON)] 함수와 모듈 (0) | 2023.05.03 |
[파이썬(PYTHON)] 기본 문법 - 조건문과 반복문 (0) | 2023.05.03 |
[파이썬(PYTHON)] 기본 문법 - 연산자 (0) | 2023.05.03 |
댓글