https://programmers.co.kr/learn/courses/30/lessons/12944
arr = [1, 2, 3, 4]
def solution1(arr):
answer = 0
for i in arr :
answer += i
return answer / len(arr)
print(solution1(arr)) # 2.5
- for문으로 arr을 순환하며 answer에 누적하여 더해준다.
- 누적 값을 arr의 배열 요소 길이만큼 나누어준다.
arr = [1, 2, 3, 4]
def solution2(arr):
return (sum(arr) / len(arr))
print(solution2(arr)); # 2.5
- 내장 함수 sum을 활용하여 arr의 요소를 더한다.
- 누적 값을 arr의 배열 요소 길이만큼 나누어준다.
arr = [1, 2, 3, 4]
from functools import reduce
def solution3(arr):
return reduce(lambda x, y : x + y, arr) / len(arr)
print(solution3(arr)); # 2.5
- 고차 함수를 사용하기 위한 모듈 functools를 활용한다.
- reduce함수에 람다 형식을 사용하여 arr값을 누적하며 더해준다.
- 누적 값을 arr의 배열 요소 길이만큼 나누어준다.
arr = [1, 2, 3, 4]
import statistics
def solution4(arr):
return statistics.mean(arr)
print(solution4(arr)); # 2.5
- 통계 모듈인 statistics를 import한다.
- 데이터의 평균을 구하는 mean()함수를 활용한다.