-오늘 수강한 분량
chapter04_53 ~ chapter04_69
-각 강의별 학습한 핵심 내용 정리
chapter04_53 : 회원가입과 관리 클래스를 각각 만들고 리스트 안에 있는 아이디와 비밀번호를 조회하는 기능으로 회원을 관리하는 모듈을 만든다.
chapter04_54 : 클래스를 상속받기 위해서는 상위클래스의 클래스 명을 하위클래스를 정의할때 ()안에 기입해야한다.
chapter04_55 : BOOK의 속성 3가지를 포함하는 클래스를 만든다. 책의 저장소에는 앞선 클래스의 속성들이 리스트로 새로운 클래스의 속성이 되고, 등록, 제거, 전체 책 출력, 한권만 출력과 같은 기능을 만든다.
chapter04_56 : 추상클래스는 상위 클래스에서 정의하지 않은 기능을 하위 클래스가 상속했을때 강제로 정의하게 하는 것으로 from abc import ABCMeta, abstractmethod 를 통해서 abc 패키지에서 2가지 기능을 가져온다. 그리고 상위 클래스에서 구현하지 않은 기능 위에 @abstractmethod 라고 표시한다. 이후 하위 클래스들은 상위 클래스를 상속하면서 표시된 기능들을 반드시 구현해야한다.
chapter04_57 : Dice클래스에서 처음 컴퓨터와 유저의 숫자를 0으로 초기화 해주고 random 모듈을 통해 난수를 발생 시키면 그 난수가 다시 속성값이 된다. 이후 난수의 크기를 비교해 승자를 가르는 방식의 프로그램이다.
chapter04_58 : car, racing이라는 두가지 모듈을 만들어서 하나의 패키지로 관리한다. random모듈을 이용해서 자동차의 속도를 제어하는 코드를 하나 만들고 for문을 통해 rap을 반복하는 형태로 프로그램을 만든다. 패키지를 다 만들면 실행 파일에 import를 하고 car의 객체를 생성하고 racing을 시작한다.
chapter04_59 : mp3플레이어에는 재생목록이라는 리스트를 속성으로 만들고 loop기능을 False라고 한다. addSong은 노래를 리스트에 추가하는 기능이다. playSong 기능에서 if문으로 프로그램을 분기한다. isLoop기능이 True라면 계속 실행하는 무한반복 while문에 sleep()함수를 이용해서 지연되게 하고 False면 한번을 실행한다. MP3의 셔플 기능은 random모듈의 shuffle기능을 사용해서 구현한다.
chapter04_60 : try ~ except 구문을 통해서 예외를 처리할 수 있다.
chapter04_61 : 사용자 예외는 예외클래스를 만들때 상위 클래스 Exception을 상속받고 super().init()을 통해 상위 클래스의 속성을 사용자 편의에 맞춰 초기화해 사용가능하다.
chappter04_62 : except Exception as e: 를 통해서 예외가 발생하면 그 예외의 종류가 무엇인지 파악 가능하다.
chappter04_63 : raise 키워드를 사용하면 예외를 발생시킬 수 있다. if n == '':
raise EmptyDataException('name') 이렇게
chappter04_64 : try ~ except ~ finally 에서 예외가 발생해도 finally에서는 무조건 실행된다.
chapter04_65 : with open (파일경로, 'r,a,w') as f 를 이용해서 텍스트 파일에 문자를 입력하거나 입력된 문자를 읽을 수 있다.
chapter04_66 : 텍스트 파일 쓰기 모드에서 a는 기존 내용에 덧붙여서 쓰는 기능을 하고 w는 새로운 내용만 기록하고 기존 내용은 지운다.
chapter04_67,68 : readline()는 텍스트 파일의 한 행만 읽어서 문자열로 반환하고 readlines()는 텍스트 전체를 읽고 리스트 형태로 반환한다.
chapter04_69 : from datetime import datetime
from datetime import timedelta 를 통해서 날짜 데이터를 받고 계산이 가능하다.
느낀점
스터디노트를 밀려쓰면 주말이 짧아진다!