ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [파이썬] 리스트로 평균 구하기
    프로그래밍/Python 2022. 2. 19. 21:50

     

     

     

    자, 오늘은 리스트로 평균 구하는 법에 대해 알아보려합니다.

     

    sum 함수와 len 함수만 있으면 간단하게 계산이 가능한데요. 우선은 간단하게 계산하는 법에 대해 알아보고, 더 나아가 sum 함수와 len 함수를 직접 만들어보려고해요.

     

    우선 데이터들이 필요합니다. 제 주변 사람들의 나이를 평균을 내어 보겠습니다.

     

     

     

    데이터 삽입

    사람 A B C D E F
    나이 23 28 23 23 28 24

     

    사람들의 나이를 리스트 안에 넣어야합니다.

    age = [23, 28, 23, 23, 28, 24]

     

     

     

    데이터 추가

    중간에 사람 한 명이 더 와서 데이터를 추가해야합니다.

    age.append(23)
    # [23, 28, 23, 23, 28, 24, 23]
    사람 A B C D E F G
    나이 23 28 23 23 28 24 23

    append 메서드를 통해 리스트에 데이터를 추가할 수 있습니다.

     

     

     

    평균 구하기

    평균을 구하기 위해서는 모든 요소의 합을 구하고, 모든 요소의 개수로 나누면 됩니다. 이를 수행하는 함수가 sum과 len입니다. 

     

    avg = sum(age)/len(age)
    print(avg)

     

    age 리스트의 합을 구해준 후에 age 개수로 나누어 평균을 구해줍니다.

     

    허나, 그냥 이렇게 출력하면 소수점이 무지막지하게 길게 나오므로, 소수점 제한을 해주는 것이 좋습니다.

     

    print(f'{age:.2f}')

     

     

     

    sum 함수 만들기

    이번에는 파이썬으로 리스트에 있는 모든 값을 더하는 함수를 만들어줄거에요. 이미 만들어진 함수가 있지만, 그 내부를 파악하기 위해 또 sum 함수를 응용할 경우가 있을 수도 있기에 진행합니다.

     

    def sum(list_data):
        result = 0
        for i in list_data:
        	result += i
        return result

    모든 값을 더할 변수인 result를 만들어줍니다. 빈 값인 0에 데이터를 누적하여 더해줍니다. 모두 더한 값은 return하여 반환합니다.

     

     

     

    len 함수 만들기

    이번에는 리스트의 개수를 세어주는 함수인 len 함수를 만들어봅니다.

    def len(list_data):
        cnt = 0
        for i in list_data:
            cnt += 1
        return cnt

    데이터를 누적하여 더해주어야하므로, 초기값으로 0을 설정합니다. 한 개의 데이터가 순회하여 빠져 나올 때마다 cnt에 1씩 추가해줍니다. 그리고 해당 값을 반환해줍니다.

     

     

    sum 함수와 len 함수 이용하지 않고 평균 구하기

     

    age = [23, 28, 23, 23, 28, 24]
    
    result = 0
    cnt = 0
    for i in age:
        result += i
        cnt += 1
        
    avg = result / cnt
    
    print(f'{avg:.2f}')
    반응형
Designed by Tistory.