[파이썬 원격 강의 과제]220913 #3 클래스 활용해보기
2022. 9. 21. 11:16ㆍ스파르타코딩클럽[AI트랙 3기]/파이썬 과제

1)1번 문제(도형 너비 구하기)
>내가짠 코드
lass Area():
def __init__(self, v1, v2):
self.v1 = v1
self.v2 = v2
def squre(self,v1,v2): #사각형의 넓이 메소드
result = self.v1 * self.v2
return result
def triangle(self,v1,v2): #삼각형의 넓이 메소드
result = (self.v1 * self.v2) / 2
return result
def circle(self,v1,v2) :#원의 넓이 메소드
result = (self.v1 / 2)**2 * 3.14
return result
area = Area(10, 20) #인스턴스 생성
print(area.squre())
print(area.triangle())
print(area.circle())
▶각 함수별로 인자를 추가해줬다. init에서 이미 v1,v2를 지정해줘서 이것을 전역변수처럼 쓸 수 있는데 필요도 없는 v1,v2를 함수별로 넣어서 작동 안했음.
>정답 코드
class Area():
def __init__(self, v1, v2):
self.v1 = v1
self.v2 = v2
def squre(self): #사각형의 넓이 메소드
result = self.v1 * self.v2
return result
def triangle(self): #삼각형의 넓이 메소드
result = (self.v1 * self.v2) / 2
return result
def circle(self) :#원의 넓이 메소드
result = (self.v1 / 2)**2 * 3.14
return result
area = Area(10, 20) #인스턴스 생성
print(area.squre())
print(area.triangle())
print(area.circle())

2)2번문제(계산기 클래스 활용)>내가짠 코드
class Calc():
def __init__(self, a, b):
self.a = a
self.b = b
def plus(self):
result = self.a + self.b
return result
def minus(self):
result = self.a - self.b
return result
def multiple(self):
result = self.a * self.b
return result
def divide(self):
result = self.a / self.b
return result
calc = Calc()
calc().set_number(20, 10)
print(calc.plus())
print(calc.minus())
print(calc.multiple())
print(calc.divide())
▶밑에 set함수라는 것을 따로 지정해줬다. 그래서 init 안쓰고 set함수를 정의해주고 나머지 처리
>정답코드
class Calc():
def set_number(self, a, b):
self.a = a
self.b = b
def plus(self):
result = self.a + self.b
return result
def minus(self):
result = self.a - self.b
return result
def multiple(self):
result = self.a * self.b
return result
def divide(self):
result = self.a / self.b
return result
calc = Calc()
calc.set_number(20, 10)
print(calc.plus())
print(calc.minus())
print(calc.multiple())
print(calc.divide())

3)3번문제(프로필 관리기능 만들어보기)
class Profile():
def __init__(self):
self.profile = {
"name": "-",
"gender": "-",
"birthday": "-",
"age": "-",
"phone": "-",
"email": "-",
}
def set_profile(self, profile):
self.profile = profile
def get_name(self):
return self.profile["name"] # self.profile 딕셔너리 중 name에 해당하는 value값을 리턴
def get_gender(self):
return self.profile["gender"]
def get_birthday(self):
return self.profile["birthday"]
def get_age(self):
return self.profile["age"]
def get_phone(self):
return self.profile["phone"]
def get_email(self):
return self.profile["email"]
profile = Profile() # 인스턴스(profile) 생성
profile.set_profile({
"name": "lee",
"gender": "man",
"birthday": "01/01",
"age": 32,
"phone": "01012341234",
"email": "python@sparta.com",
})
print(profile.get_name())
print(profile.get_gender())
print(profile.get_birthday())
print(profile.get_age())
print(profile.get_phone())
print(profile.get_email())
'스파르타코딩클럽[AI트랙 3기] > 파이썬 과제' 카테고리의 다른 글
| [파이썬 원격 강의 과제]220915 #5 조건문, 반복문 (0) | 2022.09.21 |
|---|---|
| [파이썬 원격 강의 과제]220914 #4 파이썬 심화 문법 사용해보기 (0) | 2022.09.21 |
| [파이썬 원격 강의 과제]220907 #2 숫자 야구 만들기 (1) | 2022.09.21 |
| [파이썬 원격 강의 과제] 220906 #1 계산기 만들어보기 (0) | 2022.09.18 |