반응형
Day 1: 파일 열기와 닫기
- 강의 내용:
- 파일 입출력의 기본 개념
- 파일 입출력의 필요성
- 파일 처리 단계
- 파일 열기와 닫기
- open() 함수
- 파일 모드 (읽기, 쓰기, 추가)
- close() 함수
- 파일 입출력의 기본 개념
- 실습:
- 파일 열기와 닫기 예제 작성
# 파일 열기와 닫기
file = open("example.txt", "w") # 쓰기 모드로 파일 열기
file.write("Hello, Python!")
file.close() # 파일 닫기
Day 2: 파일 읽기
- 강의 내용:
- 파일 읽기 모드
- read() 메서드: 파일의 모든 내용 읽기
- readline() 메서드: 한 줄씩 읽기
- readlines() 메서드: 모든 줄을 리스트로 읽기
- 파일 읽기 시 주의사항
- 파일의 크기
- 파일 위치 포인터
- 파일 읽기 모드
- 실습:
- 파일 읽기 예제 작성
# 파일 읽기 예제
file = open("example.txt", "r") # 읽기 모드로 파일 열기
# read() 메서드
content = file.read()
print(content)
# 파일 위치 포인터를 처음으로 되돌리기
file.seek(0)
# readline() 메서드
line = file.readline()
print(line)
# 파일 위치 포인터를 처음으로 되돌리기
file.seek(0)
# readlines() 메서드
lines = file.readlines()
print(lines)
file.close() # 파일 닫기
Day 3: 파일 쓰기
- 강의 내용:
- 파일 쓰기 모드
- write() 메서드: 파일에 내용 쓰기
- writelines() 메서드: 여러 줄을 파일에 쓰기
- 파일 쓰기 시 주의사항
- 기존 파일 덮어쓰기
- 파일 모드 선택
- 파일 쓰기 모드
- 실습:
- 파일 쓰기 예제 작성
# 파일 쓰기 예제
file = open("example.txt", "w") # 쓰기 모드로 파일 열기
# write() 메서드
file.write("Hello, Python!\n")
file.write("This is a new line.\n")
# writelines() 메서드
lines = ["Line 1\n", "Line 2\n", "Line 3\n"]
file.writelines(lines)
file.close() # 파일 닫기
Day 4: 파일 추가 쓰기
- 강의 내용:
- 파일 추가 쓰기 모드
- 파일 모드 'a' (append)
- 기존 파일 내용 유지
- 파일 추가 쓰기 예제
- 파일 추가 쓰기 모드
- 실습:
- 파일 추가 쓰기 예제 작성
# 파일 추가 쓰기 예제
file = open("example.txt", "a") # 추가 쓰기 모드로 파일 열기
# 기존 파일 내용 유지하며 새 내용 추가
file.write("Appending a new line.\n")
file.close() # 파일 닫기
Day 5: with 구문을 사용한 파일 처리
- 강의 내용:
- with 구문의 개념
- with 구문을 사용한 파일 열기
- 자동으로 파일 닫기
- with 구문을 사용한 파일 읽기와 쓰기
- with 구문의 개념
- 실습:
- with 구문을 사용한 파일 처리 예제 작성
# with 구문을 사용한 파일 읽기
with open("example.txt", "r") as file:
content = file.read()
print(content)
# with 구문을 사용한 파일 쓰기
with open("example.txt", "w") as file:
file.write("Hello, with statement!\n")
Day 6: 바이너리 파일 처리
- 강의 내용:
- 바이너리 파일의 개념
- 텍스트 파일 vs 바이너리 파일
- 바이너리 파일 읽기와 쓰기
- 바이너리 모드 ('rb', 'wb')
- 바이너리 파일의 개념
- 실습:
- 바이너리 파일 읽기와 쓰기 예제 작성
# 바이너리 파일 쓰기 예제
with open("example.bin", "wb") as file:
data = b'\x00\x01\x02\x03\x04'
file.write(data)
# 바이너리 파일 읽기 예제
with open("example.bin", "rb") as file:
data = file.read()
print(data) # b'\x00\x01\x02\x03\x04'
Day 7: 파일 입출력 종합 연습 및 프로젝트
- 강의 내용:
- 파일 입출력 종합 연습 문제 풀이
- 다양한 파일 입출력 문제
- Q&A 세션
- 미니 프로젝트
- 주제 선정 및 프로그램 설계
- 파일 입출력을 활용한 프로그램 구현 및 테스트
- 파일 입출력 종합 연습 문제 풀이
- 실습:
- 종합 연습 문제 풀기
- 미니 프로젝트 작성 및 발표
# 연습 문제 1: 파일에서 각 줄을 읽어 역순으로 출력하는 함수 작성
def reverse_lines(file_path):
with open(file_path, "r") as file:
lines = file.readlines()
for line in reversed(lines):
print(line.strip())
reverse_lines("example.txt")
# 연습 문제 2: 두 개의 파일을 읽어 합쳐 새로운 파일에 쓰는 함수 작성
def merge_files(file1_path, file2_path, output_path):
with open(file1_path, "r") as file1, open(file2_path, "r") as file2, open(output_path, "w") as output_file:
content1 = file1.read()
content2 = file2.read()
output_file.write(content1 + content2)
merge_files("example1.txt", "example2.txt", "merged.txt")
# 미니 프로젝트 예제: 로그 파일 분석 프로그램
def analyze_log(file_path):
with open(file_path, "r") as file:
lines = file.readlines()
error_count = 0
warning_count = 0
for line in lines:
if "ERROR" in line:
error_count += 1
elif "WARNING" in line:
warning_count += 1
print(f"Errors: {error_count}")
print(f"Warnings: {warning_count}")
analyze_log("logfile.txt")
이 강의는 파이썬의 파일 입출력을 익히는 것을 목표로 하며, 각 강의는 이론과 실습을 포함합니다. 다음 주차에 대한 상세 강의를 원하시면 말씀해 주세요!
반응형
'-----ETC2----- > Python' 카테고리의 다른 글
[Python] Week 15: 모듈 (0) | 2024.06.01 |
---|---|
[Python] Week 14: 예외 처리 (0) | 2024.06.01 |
[Python] Week 12: 문자열 - 정규표현식 (0) | 2024.06.01 |
[Python] Week 11: 문자열 조작 (0) | 2024.06.01 |
[Python] Week 10: 집합 (0) | 2024.06.01 |