class Notebook:
def __init__(self, title):
self.title = title
self.page_number = 1 # page 미지정 시, 다음 page 저장을 위해 선언
self.total_page = 1 # 전체 page 카운트하기 위해 선언
self.notes = {}
def add_note(self, note, page = 0):
if self.total_page <= 300 and page <= 300: # 전체 page 300 이하 조건
# page 지정 시, 300 page 이하만 지정할 수 있도록 조건
if page == 0:
self.notes[self.page_number] = note
self.page_number += 1 # page 지정당 시, +1 하여 다음 page 저장
self.total_page += 1 # 전체 page + 1
else:
self.notes[page] = note
self.total_page += 1 # 전체 page + 1
else:
print("Page가 모두 채워졌습니다.")
논의 사항
1. page 지정 시, 300 page 이상 page는 못 쓰도록 조건 추가함.
2. page 미지정 시, page_number 따로 저장. page 지정과 따로 저장해야 바로 다음 page로 넘어갈 수 있음.
예를 들어, 이전 코드는
notebook_01.add_note(note_01)
notebook_01.add_note(note_02)
notebook_01.add_note(note_10, 10)
notebook_01.add_note(note_03)
이렇게 note_10과 같이 page 지정이 중간에 껴있으면, note_03가 page 3를 건너 띄고 page 4 로 지정되어 버림.
그러나 위 코드로 변경하면 미지정 note들이 건너띄는 부분 없이 앞에서부터 채워짐.
comment