-
[파이썬] 리스트로 평균 구하기프로그래밍/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}')
반응형'프로그래밍 > Python' 카테고리의 다른 글
[Python] requests 모듈 (0) 2022.07.13 [파이썬] 세탁소 사장 동혁 - 백준 2720번 (0) 2022.05.06 [파이썬] 전자레인지 - 백준 10162번 (0) 2022.05.06 [파이썬] 엑셀로 텍스트 파일 만들어 평균 구하기 (0) 2020.05.09