전체 방문자
오늘
어제
이대코
ServerNeverDown
이대코
  • 분류 전체보기 (110)
    • Project (9)
      • GASIP_대학 커뮤니티 (5)
      • CATCHROOM_야놀자중고숙박거래 (2)
      • CANCER-FINE_암환자를 위한 정보 제공 사.. (2)
    • Development (46)
      • Python (9)
      • Java (8)
      • Kotlin (1)
      • Spring&Springboot (4)
      • BootCamp (10)
      • DevOps (1)
      • TrobleShooting (6)
      • Network (1)
      • DataBase (2)
      • OS (1)
      • Design Pattern (2)
    • Coding Test (52)
      • BOJ (1)
      • DFS,BFS (4)
      • 그리디 알고리즘 (6)
      • Dynamic Programming (2)
      • 이진 탐색 (0)
      • 초보자를 위한 파이썬 300제 (29)
      • 구현 (10)
    • Stock (3)
      • Market View (2)
      • Analysis of stocks (0)
      • Knowledge (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 글쓰기

인기 글

hELLO · Designed By 정상우.
이대코

ServerNeverDown

Coding Test/초보자를 위한 파이썬 300제

[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(281~290)_12.23

2022. 12. 23. 17:39

안녕하세요. Harry입니다.

 

현재 풀이중인 초보자를 위한 파이썬 300제 풀이를 진행하면서 나름대로 파악했던 문제 출제 의도와 풀이를 작성했습니다.

모든 풀이는 직접 Pycharm을 통해 에러없이 출력됨을 확인 후 작성했습니다.

 

초보자를 위한 파이썬 300제 풀이는 Wikidocs에 무료로 배포된 전자책을 활용했습니다/

https://wikidocs.net/book/922

[학습목표]

1. 각 문제별 요구하는 역량(출제의도)이 무엇인지 파악할 수 있다.

2. 각 문제별 요구하는 기술 및 기능을 활용하여 문제를 해결할 수 있다.

 

 

281 ~ 290

281 클래스 정의

다음 코드가 동작하도록 차 클래스를 정의하세요.

- 요구역량 : 클래스를 생성할 수 있는가?

>> car = 차(2, 1000)
>> car.바퀴
2
>> car.가격
1000
정답확인
class 차:
    def __init__(self,바퀴,가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

car = 차(2,1000)
print(car.바퀴)
print(car.가격)

282 클래스 상속

차 클래스를 상속받은 자전차 클래스를 정의하세요.

- 요구역량 : 타 클래스를 상속할 수 있는가?

다른 클래스를 상속하려면, 클래스 생성 시 괄호안에 상속할 클래스 명을 작성해주어야 합니다.

class 자식클래스명(부모클래스명):

자식클래스는 부모클래스의 메서드를 활용할 수 있습니다.

 

정답확인
class 차:
    def __init__(self,바퀴,가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

class 자전차(차):
    pass

283 클래스 상속

다음 코드가 동작하도록 자전차 클래스를 정의하세요. 단 자전차 클래스는 차 클래스를 상속받습니다.

- 요구역량 : 부모클래스의 기능을 활용하여 자식 클래스 인스턴스를 지정하여 출력할 수 있는가?

>> bicycle = 자전차(2, 100)
>> bicycle.가격
100
정답확인
class 차:
    def __init__(self,바퀴,가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

class 자전차(차):
    def __init__(self,바퀴,가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

284 클래스 상속

다음 코드가 동작하도록 자전차 클래스를 정의하세요. 단 자전차 클래스는 차 클래스를 상속받습니다.

- 요구역량 : 특정 매개변수를 자식 클래스에 추가할 수 있는가?

class 자식클래스(부모클래스):

super().__init__(부모클래스에서 가져올 매개변수 들) 를 활용하면 굳이 같은 기능을 중복하여 쓰지 않고, 부모 클래스의 매개변수를 자식 클래스에서 그대로 활용할 수 있습니다.

이는 불필요한 코드의 중복을 줄여줍니다.

>> bicycle = 자전차(2, 100, "시마노")
>> bicycle.구동계
시마노
정답확인
class 차:
    def __init__(self,바퀴,가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

class 자전차(차):
    def __init__(self,바퀴,가격,구동계):
        self.바퀴 = 바퀴
        self.가격 = 가격
        self.구동계 = 구동계
        
#답지(super()활용)
class 차:
    def __init__(self, 바퀴, 가격):
        self.바퀴 = 바퀴
        self.가격 = 가격


class 자전차(차):
    def __init__(self, 바퀴, 가격, 구동계):
        super().__init__(바퀴, 가격)
        #차.__init__(self, 바퀴, 가격)
        self.구동계 = 구동계

285 클래스 상속

다음 코드가 동작하도록 차 클래스를 상속받는 자동차 클래스를 정의하세요.

- 클래스 내 새로운 메서드를 정의할 수 있는가?

>> car = 자동차(4, 1000)
>> car.정보()
바퀴수 4
가격 1000
정답확인
class 차:
    def __init__(self, 바퀴, 가격):
        self.바퀴 = 바퀴
        self.가격 = 가격


class 자동차(차):
    def __init__(self, 바퀴, 가격):
        super().__init__(바퀴, 가격)

    def 정보(self):
        print("바퀴수 ", self.바퀴)
        print("가격 ", self.가격)

286 부모 클래스 생성자 호출

다음 코드가 동작하도록 차 클래스를 수정하세요.

- 요구역량 : 부모클래스를 수정하여 자식클래스를 출력할 때 영향을 줄 수 있는가?

>> bicycle = 자전차(2, 100, "시마노")
>> bicycle.정보()
바퀴수 2
가격 100
정답확인
class 차:
    def __init__(self, 바퀴, 가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

    def 정보(self):
        print("바퀴수 ", self.바퀴)
        print("가격 ", self.가격)

class 자동차(차):
    def __init__(self, 바퀴, 가격):
        super().__init__(바퀴, 가격)

class 자전차(차):
    def __init__(self, 바퀴, 가격, 구동계):
        super().__init__(바퀴, 가격)
        self.구동계 = 구동계

287 부모 클래스 메서드 호출

자전차의 정보() 메서드로 구동계 정보까지 출력하도록 수정해보세요.

- 자식클래스를 수정하여 출력문구를 추가할 수 있는가?

>> bicycle = 자전차(2, 100, "시마노")
>> bicycle.정보()
바퀴수 2
가격 100
구동계 시마노
정답확인
class 차:
    def __init__(self, 바퀴, 가격):
        self.바퀴 = 바퀴
        self.가격 = 가격

    def 정보(self):
        print("바퀴수 ", self.바퀴)
        print("가격 ", self.가격)
        

class 자동차(차):
    def __init__(self, 바퀴, 가격):
        super().__init__(바퀴, 가격)

class 자전차(차):
    def __init__(self, 바퀴, 가격, 구동계):
        super().__init__(바퀴, 가격)
        self.구동계 = 구동계
    def 정보(self):
        super().정보()
        print("구동계 ", self.구동계)

288 메서드 오버라이딩

다음 코드의 실행 결과를 예상해보세요.

- 요구역량 : 클래스가 상속관계일 때 실행결과를 알고 있는가?

class 부모:
  def 호출(self):
    print("부모호출")

class 자식(부모):
  def 호출(self):
    print("자식호출")
나 = 자식()
나.호출()
정답확인
- 자식호출

289 생성자

다음 코드의 실행 결과를 예상해보세요.

- 요구역량 : 클래스가 상속관계일 때 실행결과를 알고 있는가?

class 부모:
  def __init__(self):
    print("부모생성")

class 자식(부모):
  def __init__(self):
    print("자식생성")
나 = 자식()
정답확인
- 자식생성

290 부모클래스 생성자 호출

다음 코드의 실행 결과를 예상해보세요.

- 요구역량 : 자식클래스가 부모클래스를 상속하고 super.__init__를 인용했을 때 인스턴스 실행 결과를 알고 있는가?

suer로 인용한 경우, 아래의 코드에서는 자식클래스 실행 -> 부모클래스 실행까지 된다.

class 부모:
  def __init__(self):
    print("부모생성")

class 자식(부모):
  def __init__(self):
    print("자식생성")
    super().__init__()

나 = 자식()
정답확인
- 자식생성
- 부모생성
 
감사합니다.
 
저작자표시 비영리 변경금지 (새창열림)

'Coding Test > 초보자를 위한 파이썬 300제' 카테고리의 다른 글

[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(271~280)_12.23  (0) 2022.12.23
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(261~270)_12.22  (0) 2022.12.22
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(251~260)_12.22  (0) 2022.12.22
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(241~250)_12.22  (0) 2022.12.22
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(231~240)_12.21  (0) 2022.12.21
    'Coding Test/초보자를 위한 파이썬 300제' 카테고리의 다른 글
    • [독학 파이썬] 초보자를 위한 파이썬 300제 풀이(271~280)_12.23
    • [독학 파이썬] 초보자를 위한 파이썬 300제 풀이(261~270)_12.22
    • [독학 파이썬] 초보자를 위한 파이썬 300제 풀이(251~260)_12.22
    • [독학 파이썬] 초보자를 위한 파이썬 300제 풀이(241~250)_12.22
    이대코
    이대코
    20대에 대장암 걸린 코틀린/자바 백엔드 개발자의 블로그입니다.

    티스토리툴바