HOWTO · Python
Python에서 함수 종료
이 기사에서는 return 문을 사용하여 Python 함수가 어떻게 종료되는지 살펴 봅니다.
이 페이지의 내용
모든 프로그램에는 약간의 실행 흐름이 있습니다. 흐름은 프로그램이 실행되는 방식에 불과합니다. return문은 프로그램 내에서 다양한 경우에 사용될 수있는 Python의 함수를 종료하는 데 사용됩니다. 그러나 우리가이 진술을 사용하는 가장 일반적인 두 가지 방법은 다음과 같습니다.
- 함수가 종료되거나 실행 된 후 함수에서 값을 반환하려고 할 때. 그리고 나중에 프로그램에서이 값을 사용할 것입니다.
def add(a, b):
return a + b
value = add(1, 2)
print(value)
출력:
3
여기에서a+b로 계산 된 값을 반환 한 다음value변수 내에3값을 저장합니다.
- 주어진 순간에 함수의 실행을 멈추고 싶을 때.
def add(a, b):
if a == 0:
return
elif b == 0:
return
else:
sum = a + b
return sum
value = add(0, 2)
print(value)
출력:
None
여기서a또는b의 값이0이면 숫자 합계를 계산하지 않고 직접 반환합니다. 0이 아니면sum만 계산하고 반환합니다.
이제 프로그램에서이 명령문을 구현하면 프로그램에서이 명령문을 추가 한 위치에 따라 프로그램 실행이 변경됩니다. 어떻게 작동하는지 봅시다.
Python의 암시 적 반환 유형
if문을 사용하여 작성한 함수가 있다고 가정하면 프로그램이 어떻게 작동하는지 살펴 보겠습니다.
def solution():
name = "john"
if name == "john":
print("My name ", name)
solution()
출력:
My name john
solution()함수는 인수를 사용하지 않습니다. 그 안에name이라는 변수가 있고 그 값이if문을 사용하여 문자열john과 일치하는지 확인합니다. 일치하면name변수의 값을 인쇄 한 다음 함수를 종료합니다. 그렇지 않으면 문자열이 일치하지 않으면 아무것도하지 않고 그냥 종료합니다.
여기에서는 코드에return문이 작성되어 있지 않기 때문에return문이 없다고 생각할 수 있습니다. return 문은 반드시 작성해야하는 것은 아닙니다. Python 함수를 종료 할 때마다return문을 지정하지 않은 경우에만None값으로return을 호출합니다. None값은 함수가 실행을 완료했으며 아무것도 반환하지 않음을 의미합니다. 매개 변수없이return문을 지정한 경우return None과도 동일합니다. 함수 내에 반환 유형을 지정하지 않으면 해당 함수는return문을 호출합니다. 파이썬에서는 암시 적 반환 유형이라고합니다.
Python의 명시 적 반환 유형
코드 내에서 직접return문을 명시 적으로 추가 할 때마다 반환 유형을 명시 적 반환 유형이라고합니다. 함수에 의해 계산 된 값을 전달하고 나중에 사용하기 위해 변수에 저장하거나return문을 사용하여 일부 조건에 따라 함수 실행을 중지 할 수있는 것과 같이 명시 적 반환 유형을 사용하면 많은 이점이 있습니다. 등등. Python에서 명시 적 유형의 예를 살펴 보겠습니다.
def Fibonacci(n):
if n < 0:
print("Fibo of negative num does not exist")
elif n == 0:
return 0
elif n == 1 or n == 2:
return 1
else:
return Fibonacci(n - 1) + Fibonacci(n - 2)
print(Fibonacci(0))
출력:
0
피보나치 수를 찾는 프로그램입니다. 명시적인return문을 사용하여 코드가 어떻게 반환되는지 확인합니다. 여기서 주목해야 할 중요한 점은이 함수에 전달 된 숫자가2또는2보다 작은 경우 일부 값을 직접 반환하고 그 아래에 작성된 코드를 무시하고 함수를 종료한다는 것입니다. 이 함수에 전달 된 값이2보다 큰 경우에만 기본 코드 (else블록 내부에 있음)를 실행합니다.