Python - Function

황인용·2019년 12월 11일
0

Python

목록 보기
15/44

Function

함수(Function)는 일정한 작업을 수행하는 코드블럭이다.
함수를 사용하는 이유는 다음과 같다

  1. 반복되어 계속 사용되는 코드들을 함수로 정의하여 효과적으로 사용하기 위해
  2. 함수로 정리를 해서 코드의 가독성을 높이기 위해

image.png

파이썬에서 함수는 'def' 키워드를 사용하여 정의되며, 다음과 같은 문법을 갖는다.

def 함수명(parameter):
문장1
문장2
...
문장N
[return 리턴값]

  • parameter와 return은 optional이다
  • input parameter가 없는 함수도 있을 수 있다
  • return 값이 없는 함수도 있을 수 있다.
  • return 값은 함수에서 해당 함수를 호출한 주체(invoker)에게 결과값(output)을 보내주는 것이다

예를 들어, 어떠한 수가 prime number(소수) 인지를 계산하는 로직을 구성할 때 다음과 같이 구현할 수 있다

n = 11

# 1 혹은 그 이하이면 소수가 아니다 
if (n <= 1): 
    return False

# 2 와 3은 소수 이다
if (n <= 3): 
    return True

# 2 나 3으로 나누어 떨이지면 소수가 아니다
if (n % 2 == 0 or n % 3 == 0): 
    return False

i = 5
while(i * i <= n): 
    if (n % i == 0 or n % (i + 2) == 0) : 
        return False
    i = i + 6

return True

image.png

이러한 소수 계산을 여러번 반복해서 해야 한다면 위의 코드를 여러번 중복되게 사용하여야 한다. 따라서 반복적으로 싱행하는 코드는 다음 처럼 함수에 정의하고 간단하게 함수를 호출하는 식으로 사용한다

is_eleven_prime = is_prime(11)
print(f"11 is prime? {is_eleven_prime}")

is_ten_prime = is_prime(10)
print(f"10 is prime? {is_ten_prime}")

Assignment

parameter 2개를 input으로 받는 함수를 구현해 주세요. 함수의 이름은 multiply 라고 선언되어야 합니다.
그리고 multiply 는 2개의 paramter를 곱한 값을 리턴해주어야 합니다.

def multiply(num1, num2):
  return num1 * num2
  
profile
dev_pang의 pang.log

0개의 댓글