💡 글 작성자는 vscode를 활용하여 Python을 작성하고있습니다.
코드 복사 주소 : https://pastebin.com/zHr7qYDW
현재 이 글은 한 번에 변수를 지정 복습, setter와 getter 복습, 코드를 줄여서 깔끔하게 사용하는 방법에 대한 글입니다.
이 내용을 읽기전에 https://donggyu.tistory.com/55 를 먼저 읽어주세요.
class Item: # 과목명, 점수
def __init__(self):
self._name = None
self._score = 0
def setName(self, name):
self._name = name
def getName(self):
return self._name
def setscore(self, score):
self._score = score
def getscore(self):
return self._score
class Student: # 학생이름, 과목
def __init__(self):
self._name = None
self._items = [] # 빈 아이템 리스트 만듬
def getName(self):
return self._name
def setName(self, name):
self._name = name
def getItems(self):
return self._items
def appendItem(self, item):
self._items.append(item)
class School:
def __init__(self):
self._name = None
self._items = []
def getMidName(self):
return self._name
def setMidName(self, name):
self._name = name
def getItems(self):
return self._items
def appendItem(self, item):
self._items.append(item)
def main():
#학교 생성
mid = School()
mid.setMidName("대학교")
# 동규, 동순 생성
donggyu = Student()
mansu = Student()
donggyu.setName("동규")
mansu.setName("동순")
# 국어 생성
kor = Item()
kor.setName("국어")
kor.setscore(100)
kor_0 = Item()
kor_0.setName("국어")
kor_0.setscore(90)
# 수학 생성
math = Item()
math.setName("수학")
math.setscore(80)
math_0 = Item()
math_0.setName("수학")
math_0.setscore(70)
# 영어 생성
eng = Item()
eng.setName("영어")
eng.setscore(60)
eng_0 = Item()
eng_0.setName("영어")
eng_0.setscore(50)
donggyu.appendItem(kor)
donggyu.appendItem(math)
donggyu.appendItem(eng)
mid.appendItem(donggyu)
# 국어, 수학, 영어
mansu.appendItem(kor_0)
mansu.appendItem(math_0)
mansu.appendItem(eng_0)
mid.appendItem(mansu)
#print("====================================================================")
#print(mid.getMidName())
#print("학생1 | ", donggyu.getName())
#for item in donggyu.getItems():
# print(item.getName(), item.getscore(), end = ' ')
#print('\n')
#print("학생2 | ", mansu.getName())
#for item in mansu.getItems():
# print(item.getName(), item.getscore(), end = ' ')
#print("\n====================================================================")
print("====================================================================")
print(mid.getMidName())
for student in mid.getItems():
print("\n학생 | ", student.getName())
for item in student.getItems():
print(item.getName(), item.getscore(), end = ' ')
print("\n====================================================================")
if __name__ == "__main__":
main()
! 이전 코드 !
#print("====================================================================")
#print(mid.getMidName())
#print("학생1 | ", donggyu.getName())
#for item in donggyu.getItems():
# print(item.getName(), item.getscore(), end = ' ')
#print('\n')
#print("학생2 | ", mansu.getName())
#for item in mansu.getItems():
# print(item.getName(), item.getscore(), end = ' ')
#print("\n====================================================================")
! 코드 줄여서 사용하는 경우 !
print("====================================================================")
print(mid.getMidName())
for student in mid.getItems():
print("\n학생 | ", student.getName())
for item in student.getItems():
print(item.getName(), item.getscore(), end = ' ')
print("\n====================================================================")
[Python 만들면서 배우기06] 만들면서 배우는 Python 경주마 만들기01 (0) | 2021.07.19 |
---|---|
[Python opencv] 화면 출력 및 눈,입을 검출 (0) | 2021.07.18 |
[Python 만들면서 배우기04] 만들면서 배우는 Python 정보 출력하기 (0) | 2021.07.18 |
[Python 만들면서 배우기03] 만들면서 배우는 Python 계산기 만들기 (0) | 2021.07.18 |
[Python 만들면서 배우기02] 만들면서 배우는 Python 구구단 만들기 (0) | 2021.07.18 |