[기초#6] 파일 입출력: 저장하고 불러오는 법
한줄 요약:
파이썬으로 텍스트 파일을 ‘쓰기·읽기’하면
👉 “데이터 저장”의 첫걸음 완성!
1. 파일 입출력이란?
컴퓨터의 파일에 데이터를 저장(write) 하거나
다시 읽어오는(read) 기능이에요.
2. 기본 구조
# 파일 열기
파일객체 = open("파일이름", "모드")
# 작업 수행 (쓰기/읽기)
...
# 파일 닫기
파일객체.close()
| 모드 | 의미 | 설명 |
|---|---|---|
"w" | write | 새로 쓰기 (기존 내용 덮어씀) |
"a" | append | 이어쓰기 |
"r" | read | 읽기 |
3. 예제 1: 파일에 쓰기 (write)
f = open("hello.txt", "w", encoding="utf-8")
f.write("안녕하세요!\n파이썬 파일 입출력 연습 중이에요.")
f.close()
🪄 실행 결과:
현재 폴더에 hello.txt 파일이 생기고,
내용은 이렇게 저장돼요 👇
안녕하세요!
파이썬 파일 입출력 연습 중이에요.
4. 예제 2: 파일에서 읽기 (read)
f = open("hello.txt", "r", encoding="utf-8")
content = f.read()
print(content)
f.close()
🪄 결과:
안녕하세요!
파이썬 파일 입출력 연습 중이에요.
5. 예제 3: 줄 단위로 읽기
f = open("hello.txt", "r", encoding="utf-8")
for line in f:
print(line.strip())
f.close()
🪄 결과:
안녕하세요!
파이썬 파일 입출력 연습 중이에요.
strip()은 줄 끝의 줄바꿈 문자(\n)를 제거해주는 함수예요.
6. with문으로 자동 닫기
파일을 열고 나면 꼭 close() 해야 하는데,with문을 쓰면 자동으로 닫혀요 👇
with open("data.txt", "w", encoding="utf-8") as f:
f.write("이건 with문으로 쓴 파일이에요!")
7. 예제 4: 여러 줄 쓰기
lines = ["가온\n", "지우\n", "나연\n"]
with open("friends.txt", "w", encoding="utf-8") as f:
f.writelines(lines)
🪄 friends.txt 파일 내용:
가온
지우
나연
8. 예제 5: 파일 이어쓰기 (append)
with open("friends.txt", "a", encoding="utf-8") as f:
f.write("새 친구 추가: 채린\n")
🪄 결과:
가온
지우
나연
새 친구 추가: 채린
9. 자주 하는 실수
| 실수 | 예시 | 수정 |
|---|---|---|
| 파일 닫기 안 함 | open("a.txt", "w") 후 close() 없음 | f.close() 또는 with open() 사용 |
| 인코딩 에러 | 한글 깨짐 | encoding="utf-8" 추가 |
| 잘못된 모드 | "r"인데 파일 없음 | "w"로 새로 만들기 |
10. 연습문제
# 1. favorite.txt 파일을 만들고 좋아하는 음식 3개 저장
foods = ["피자\n", "초밥\n", "떡볶이\n"]
with open("favorite.txt", "w", encoding="utf-8") as f:
f.writelines(foods)
# 2. 저장된 파일을 읽어서 출력
with open("favorite.txt", "r", encoding="utf-8") as f:
for line in f:
print(line.strip())
🪄 실행 결과:
피자
초밥
떡볶이
이전 강좌 👈 [기초#5] 함수(Function): 코드 재사용의 핵심
다음 강좌 👉 [기초#7] 예외 처리(try~except): 에러에도 멈추지 않기