본문 바로가기

전체 글130

6주차, 직렬화(인코딩) pickle, json 직렬화란 객체를 연속적인 데이터로 변환하는 것, 그래서 이름이 직렬화(Serialize 시리즈라고 생각하면 됨) 객체를 컴퓨터에 저장하기 위해서는 직렬화가 필요 (클래스나 인스턴스 같은 개념이 많은데 컴퓨터는 0과 1밖에 못읽는다 그래서 컴퓨터가 알아듣는 바이트화 하는 게 직렬화) "띠이용".encode("utf-8") // bytes로 인코딩 "띠이용".encode("utf-8").decode() // 원래대로 파이썬에서 객체를 직렬화하는 모듈은 pickle이다. (import 해야됨) ・ pickle.dump(출력할 객체, 파일 객체) : 파일 객체에 출력할 객체를 저장 ・ with open('text.txt', 'wb') as f: pickle.dump([1, 2, 3, 4], f) // w가 아닌.. 2022. 1. 28.
6주차, 파일입출력, 인코딩, with open as, os.listdir open()함수는 엑셀이나 데이터베이스를 여는 함수다. close() 안해주면 메모리 계속 소비됨 매개변수는 첫번째, 파일의 경로 ("C://Users/Home/Documents/text.txt" 등) 두번째, 파일 열기 방식 (읽기, 쓰기 모드 등) 세번째, 인코딩 방식 두번째 매개변수를 정리해보면 'r': 읽기용 'w': 쓰기용 (이미 같은 경로에 파일이 존재하면 파일 내용을 지움) 'a': 쓰기용으로 열기, 근데 'w'랑 다르게 이미 같은 경로에 파일이 존재하면 내용 덧붙이기 'x': 배타적 생성모드, 파일이 이미 존재하면 예외를 일으킴 'rb': 바이트 어레이 일기 'wb': 바이트 어레이 쓰기 세번째 매개변수인 인코딩의 종류는 encoding="utf-8" 등의 형태로 씀 ASCII ・ 미국 정.. 2022. 1. 28.
6주차, 파이썬 클래스 활용 __call__은 객체를 메서드처럼 호출할 때 실행한다. class Call: def __call__(self, *a): print('올') for i in a: print(i) a = Call() a() // 올 a의 괄호안에 집어넣은 건 튜플로 저장되고, 저장한 건 전부 for문에 의해 프린트 된다. 2022. 1. 27.
6주차, 파이썬 예외처리, raise, assert try: 에러 문장 except: 에러 났을 때 실행할 문장 에러나면 except안에 있는 게 실행 try: 에러 문장 except Exception as e: # 이렇게 as ??라고 적어놓으면 발생할 에러문이 string형태의 ??에 저장됨 print(e) 에러 났을 때 실행할 문장 try: 에러 문장 except: 에러 났을 때 실행할 문장 else: 에러가 안 나면 실행할 문장 finally: 에러 발생 여부와 상관없이 실행될 문장 raise문 raise Exception("강제로 에러를 발생시킴") 이런 방식으로 raise문을 통해 우측의 string을 출력하며 에러가 발생하게 할 수도 있다. Assert문 assert A>10, 'A가 너무 작다.' assert로 시작하는 문장에 조건식을 적으.. 2022. 1. 27.