코드 6-29 oop1/oop1_3/datahandler.py ③

        def evaluate_class(self, total_avrg, sd):       #7
            avrg = self.get_average()
            std_dev = self.get_standard_deviation()
    
            if avrg <total_avrg and std_dev >sd:
                print("성적이 너무 저조하고 학생들의 실력 차이가 너무 크다.")
            elif avrg > total_avrg and std_dev >sd:
                print("성적은 평균 이상이지만 학생들의 실력 차이가 크다. 주의 요망!")
            elif avrg < total_avrg and std_dev <sd:
                print("학생들의 실력 차이는 크지 않지만 성적이 너무 저조하다. 주의 요망!")
            elif avrg > total_avrg and std_dev <sd:
                print("성적도 평균 이상이고 학생들의 실력 차이도 크지 않다.")
    
        def get_evaluation(self, total_avrg, sd = 20):  #8
            print('*' * 50)
            print('{} 반 성적 분석 결과'.format(self.year_class))
            print(
            "{0}반의 평균은 {1}점이고 분산은 {2}이며 따라서 표준편차는 {3}이다".format(
                self.year_class,
                self.get_average(),
                self.get_variance(),
                self.get_standard_deviation()))
            print('*' * 50)
            print('{} 반 종합 평가'.format(self.year_class)) 
            print('*' * 50) 
            self.evaluate_class(total_avrg, sd)
    
    


    evaluate_class() 메서드는 주어진 평균, 전체 평균, 표준편차를 이용해 학급의 성적을 평가합니다(#7). get_evaluation() 메서드는 최종적으로 학급의 평균, 분산, 표준편차, 종합 평가를 출력합니다(#8).

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.