파이썬 파일 CRUD 예제(memo.txt 파일 처리)
Python에서 파일을 다루는 데 있어서 핵심적인 기능은 open()함수입니다.
이 함수는 파일 이름 과 모드라는open() 두 개의 매개변수를 사용합니다 .
파일을 여는 데는 네 가지 방법(모드)이 있습니다.
"r"- 읽기 - 기본값. 파일을 읽기용으로 엽니다. 파일이 없으면 오류가 발생합니다.
"a"- 추가 - 추가를 위해 파일을 열고, 파일이 없으면 파일을 생성합니다.
"w"- 쓰기 - 쓰기를 위해 파일을 열고, 파일이 없으면 파일을 생성합니다.
"x"- 생성 - 지정된 파일을 생성하고, 파일이 있으면 오류를 반환합니다.
1. 파일에 내용 쓰기 (짧은 버전)
memo.txt 파일을 만들고 (또는 덮어쓰고) 간단한 내용을 씁니다.
Python
# write_short.py
filename = "memo.txt"
# 'w' 모드로 파일을 열어 내용을 씁니다. (기존 내용은 사라짐)
with open(filename, 'w', encoding='utf-8') as f:
f.write("첫 줄입니다.\n")
f.write("두 번째 줄입니다.\n")
print(f"'{filename}' 파일에 쓰기 완료.")
설명:
- with open(...): 파일을 열고, 블록이 끝나면 자동으로 닫습니다.
- 'w': 쓰기 모드입니다. 파일이 없으면 만들고, 있으면 내용을 덮어씁니다.
- f.write(): 파일에 문자열을 씁니다.
2. 파일 내용 읽기 (짧은 버전)
memo.txt 파일의 내용을 읽어 화면에 출력합니다. (파일이 없으면 오류 발생)
Python
# read_short.py
filename = "memo.txt"
# 'r' 모드로 파일을 열어 내용을 읽습니다.
with open(filename, 'r', encoding='utf-8') as f:
content = f.read() # 파일 전체 내용을 읽음
print("--- 파일 내용 ---")
print(content.strip()) # 앞뒤 공백 제거 후 출력
print("--- 읽기 완료 ---")
설명:
- 'r': 읽기 모드입니다. 파일이 존재하지 않으면 이 프로그램은 오류를 내며 중단됩니다.
- f.read(): 파일의 전체 내용을 문자열로 가져옵니다.
3. 파일에 내용 추가하기 (이어쓰기 - 짧은 버전)
memo.txt 파일의 기존 내용 끝에 새로운 내용을 추가합니다. (파일이 없으면 새로 만듦)
Python
# append_short.py
filename = "memo.txt"
# 'a' 모드로 파일을 열어 내용을 추가합니다.
with open(filename, 'a', encoding='utf-8') as f:
f.write("새로운 내용 추가.\n")
f.write("이어쓰기 테스트.\n")
print(f"'{filename}' 파일에 내용 추가 완료.")
설명:
- 'a': 추가 모드입니다. 파일이 없으면 새로 만들고, 파일이 있으면 맨 끝에 내용을 추가합니다.
4. 파일 삭제하기 (짧은 버전)
memo.txt 파일을 삭제합니다. (파일이 없으면 오류 발생)
Python
# delete_short.py
import os # os 모듈 필요
filename = "memo.txt"
# 파일을 삭제합니다.
# 만약 'memo.txt' 파일이 이 시점에 존재하지 않으면,
# 이 프로그램은 FileNotFoundError 오류를 내며 중단됩니다.
os.remove(filename)
print(f"'{filename}' 파일 삭제 완료.")
설명:
- import os: 파일 시스템 관련 작업을 위해 os 모듈을 가져옵니다.
- os.remove(filename): 지정된 파일을 삭제합니다. 파일이 존재하지 않으면 이 프로그램은 오류를 내며 중단됩니다.
실행 순서 및 주의사항:
- write_short.py를 실행하여 memo.txt 파일을 만듭니다.
- read_short.py를 실행하여 내용을 확인합니다.
- append_short.py를 실행하여 내용을 추가합니다.
- 다시 read_short.py를 실행하여 추가된 내용을 확인합니다.
- delete_short.py를 실행하여 파일을 삭제합니다.
- delete_short.py 실행 후 다시 read_short.py나 delete_short.py를 실행하면 파일이 없으므로 오류가 발생하며 프로그램이 멈출 것입니다.
이 예제들은 "최대한 짧게"와 "예외 처리 없이"라는 요청에 맞춰 작성되었으므로, 실제 프로젝트에서는 상황에 맞게 오류 처리 로직을 추가하는 것이 바람직합니다.
# 프롬프트 (키보드로 ) 입력 받기
print("여러 줄을 입력하세요. 입력을 종료하려면 빈 줄에서 엔터를 누르세요.")
content = ""
while True:
line = input()
if line == "":
break
content += line + "\n"
# 입력한 내용을 파일에 저장하기
with open('abc.txt', 'w', encoding='utf-8') as f:
f.write(content)
print("입력한 내용이 abc.txt 파일에 저장되었습니다.")
'Python' 카테고리의 다른 글
웹스크래핑 예제(1) - 파이썬으로 네이버 금융 인기 종목 엑셀 저장하기 (가장 직접적이고 명확함) (0) | 2025.05.19 |
---|---|
pip란 무엇인가? (0) | 2025.05.19 |
파이썬 파일 CRUD 예제(예외처리 적용) (0) | 2025.05.14 |
파이썬 예외 처리 (0) | 2025.05.14 |
파이썬 다형성이 뭐였지? (0) | 2025.05.14 |