목차
1. 파일 불러오기
•
문법
◦
f = open("파일명", "옵션"), f.close()
◦
with 구문: 구문이 끝나면 자동으로 파일이 close됨
▪
with open("파일명", "옵션") as f:
•
파일 접근 옵션
◦
w: 파일 쓰기 - 파일이 존재하면 덮어씀
◦
x: 파일 쓰기 - 파일이 존재하지 않을때만 생성
◦
r: 파일 읽기
◦
a: 파일 추가 - 파일 마지막에 새로운 내용을 추가
•
파일 type에 대한 옵션
◦
t: text 파일
◦
b: binary 파일
2. 파일 쓰기 - write
2.1 텍스트 파일 쓰기
2.2 바이너리 파일 쓰기
•
객체를 저장할 때 사용
•
bytes(): 이진데이터로 형변환 시켜줌
•
이진데이터로 저장하기: 옵션 wb
3. 파일읽기 - read
3.1 텍스트 파일 읽어오기 (옵션 : rt)
3.2 바이너리 파일 읽어오기
f = open("range.b", "rb")
data = f.read()
print(list(data))
f.close()
Python
복사
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
4. 파일에 내용 추가하기 - a
5. with
•
with 구문이 끝나면 자동으로 close를 하여 파일을 읽고 쓸때 조금 더 편리
with open("test1.txt", 'rt') as f:
s = f.read()
print(s)
Python
복사
data
scicence
professional
school
6. Pickle
•
직렬화(serialization): 객체를 파일로 저장하는 것
•
pickle: 파이썬에서 직렬화를 통해 바이너리 형태의 데이터를 저장하고 복원하는 모듈
◦
데이터, 객체 등 실행 중인 정보를 저장하고 다시 불러와서 사용
◦
데이터 분석에서 분석모델을 저장하고 불러오는 등 많이 사용하게 됨
•
이진타입으로 변환해서 입력하는 것보다 pickle이 더 빠름
6.1 피클파일로 저장할 클래스 선언
6.2 pickle 파일로 객체를 저장
•
문법: pickle.dump("저장할 객체", "파일 객체")
with open("obj.pkl", "wb") as f:
pickle.dump(a, f)
Python
복사
6.3 pickle 파일 로드 하기
with open("obj.pkl", "rb") as f:
load_a = pickle.load(f)
load_a
Python
복사
<__main__.A at 0x10c577da0>
6.4 로드한 피클파일 객체의 함수 실행하기
load_a.disp(), load_a.data
Python
복사
pickle test
(None, 'pickle test')
위 내용 전체를 jupyter notebook으로 보려면,
참고자료
•
패스트캠퍼스, ⟪데이터사이언스스쿨 8기⟫ 수업자료
•
인프런, ⟪프로그래밍, 데이터 과학을 위한 파이썬 입문⟫ 수업 자료