본문 바로가기
코딩 따라하기

평균 계산하기 따라하기 (Calculate the average)

by 전자남성 2020. 12. 8.

평균 계산하기 따라하기 (Calculate the average)

 

오늘은 파이썬으로 평균 구하는 방법을 간단히 살펴보겠습니다.

흔히 (숫자들의 총합)/(더한 숫자들의 총갯수)로 평균을 구합니다.

그럼 바로 평균을 구해보겠습니다.

파일 이름은 Average.py로 만들어 봤습니다.

 

I. 올드스쿨 방식입니다.

 

stud1=[39,29,95,70,49]

stud2=[60,62,79,86,29]

stud3=[10,20,30,40,50]

 

score1=0

score2=0

score3=0

 

for i in range(0,5):

score1=score1+stud1[i]

score2=score2+stud2[i]

score3=score3+stud3[i]

 

print("학생1의 평균 : {}, 학생2의 평균 : {}, 학생3의 평균 : {}".format(score1/5,score2/5,score3/5))

 

1 뭉텅이는 학생1, 학생2, 학생3의 5과목 점수를 리스트 형태로 표현한 상태입니다.

2 뭉텅이는 과목의 총합이 누적될 변수를 초기화시키는 과정입니다. score1, score2, score3에 각각 점수가 들어갑니다.

3 뭉텅이에서는 i0번째 인덱스부터 4번째 인덱스까지 반복됩니다. range(0,5) 이니 0,1,2,3,4가 반복됩니다.

이렇게 0부터 4번째까지 돌면 5개 인덱스 값이 scoreX에 누적됩니다.

 

마지막행에서 (학생1의 평균 : {})의 포맷 형태로 값이 출력됩니다. 단 이 포맷 형태에서 socre1/5, socre2/5, score3/5 방식으로 출력됩니다.

, (누적값/5)로써 평균이 나오게 됩니다. 굉장히 지저분하고 번거로운 코딩 방식입니다.

 

C:\Users\ATIV\Downloads\myworks>python .\Average.py

학생1의 평균 : 56.4, 학생2의 평균 : 63.2, 학생3의 평균 : 30.0

 

 

II. 평균을 구하는 가장 보편적인 방법입니다.

 

stud1=[39,29,95,70,49]

print( sum(stud1)/len(stud1) )

 

1행 리스트 이름을 stud1로 정의했습니다.

2행에서 sum은 리스트들의 총합 282를 의미합니다.

2행에서 len은 리스트의 개수 5를 의미합니다.

따라서 282/5= 56.4를 출력합니다.

 

C:\Users\ATIV\Downloads\myworks>python .\Average.py

56.4

 

 

III. 넘파이 라이브러리를 사용하는 방법입니다.

 

간단히 Numpy란 다차원 배열을 효과적으로 처리할 수 있도록 도와주는 파이썬 라이브러리입니다.

흔히 사용되는 random 패키지처럼 파이썬에 있는 도구라고 생각하시면 됩니다.

numpy 사용 시 코드 작성량이 비약적으로 줄어들게 됩니다. 굉장히 편리한 도구입니다.

 

import numpy #파이썬에서 넘파이 라이브러리를 가져옵니다.

stud1=[39,29,95,70,49]

 

print(numpy.mean(stud1)) # mean은 평균을 의미합니다.

print(numpy.var(stud1)) # var는 분산을 의미합니다.

print(numpy.std(stud1)) # std는 표준편차를 의미합니다.

 

 

C:\Users\ATIV\Downloads\myworks>python .\Average.py

56.4

556.6399999999999

23.593219364893802

 

 

넘파이 라이브러리를 사용하면 III처럼 코드가 비약적으로 줄어드는 것을 확인할 수 있습니다.

물론 코딩 방식은 다양하고 자신이 편한 방법을 선택하면 됩니다.

한정된 시간을 효과적으로 사용할 수 있는 넘파이 라이브러리 굉장히 매력적이지 않나요?

댓글