파이썬 순수함수, 비순수함수

(파이썬 순수 함수, 비순수 함수에서 넘어옴)

1 개념[ | ]

Pure Function, 순수 함수
Impure Function, 비순수 함수
  • 순수함수는 입력으로 주어진 것 외의 연산은 실행 하지 않음
  • 순수함수는 부수효과(side effect)가 없어야 함
  • 입력이 동일하면 출력이 동일해야함
  • 상태의 변화가 없어야함

2 순수 함수[ | ]

  • 동일한 입력 값에는 항상 동일한 출력 값을 나타냄 (즉, 부수 효과(side effect)가 발생하지 않음)
def plus(a, b):
    return a + b

print(plus(1, 2))
→ 1, 2 입력 값 만을 가지고 연산함

3 비순수 함수[ | ]

names = ['john', 'jmnote']

def append_name(name_list, newName):
    names.append(newName)

append_name(names, 'ksk')

print(names)
→ append_name 함수는 입력값 ksk값을 추가함으로 기존 names 리스트의 상태를 변화시킴
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}