함수형 프로그래밍 실전

프로그래밍 패러다임 개념

Eleanor Thomas

Senior Data Analytics Engineer

함수형 프로그래밍 실전

  • 순수 함수 예시 3가지
  • _순수_ 함수와 일반 Python 함수의 핵심 차이: 부작용 없음
  • 순수 함수는 다른 순수 함수를 호출해도 순수함을 유지

칠판

프로그래밍 패러다임 개념

예제 1 - 순수 함수 작성

def square_list(input_list):
    new_list = []

for item in input_list:
new_item = item ** 2
new_list.append(new_item)
return new_list
  • 먼저 빈 새 리스트 생성
  • 입력 리스트의 각 항목을 순회
    • 제곱
    • 새 리스트에 추가
  • 새 리스트 반환
프로그래밍 패러다임 개념

예제 2 - "비순수" 함수 수정

sample_mean = 10
scale_factor = 2

def scale_list(input_list):
    new_list = []
    for item in input_list:
        new_item = (item - sample_mean) / scale_factor
        new_list.append(new_item)
    return new_list
  • 함수 본문 밖의 변수에 의존
  • 순수 함수가 아님
프로그래밍 패러다임 개념

예제 2 - "비순수" 함수 수정

def scale_list(input_list, sample_mean, scale_factor):
    new_list = []
    for item in input_list:
        new_item = (item - sample_mean) / scale_factor
        new_list.append(new_item)
    return new_list
  • 변수 sample_meanscale_factor를 함수의 입력 매개변수로 변경
  • 이제 함수는 "순수"함수입니다
프로그래밍 패러다임 개념

예제 3 - 순수 함수 결합

def scale_value(value, sample_mean, scale_factor):
    scaled_value = (value - sample_mean) / scale_factor
    return scaled_value

def scale_list(input_list, sample_mean, scale_factor):
    new_list = []
    for item in input_list:
        new_item = scale_value(item, sample_mean, scale_factor)
        new_list.append(new_item)
    return new_list
프로그래밍 패러다임 개념

Ayo berlatih!

프로그래밍 패러다임 개념

Preparing Video For Download...