파이썬 튜토리얼-함수

  1. 파이썬 함수 란?
  2. 파이썬 함수를 정의하는 방법
  3. 파이썬 함수 예제
  4. 파이썬에서 함수 호출
  5. 반환진술
  6. 파이썬 변수의 범위와 수명
  7. 기능의 종류

이 섹션에서는

  • 기능이란?
  • 함수를 만드는 방법
  • 기능의 종류

파이썬 함수 란?

함수는 특정 작업을 수행하기위한 많은 명령문을 포함하는 프로그램의 작은 블록입니다. 다른 작업을 수행하는 수천 줄의 프로그램이 있으면 프로그램을 작은 모듈 (블록)로 나누어 가독성을 높이고 복잡성을 줄입니다.

파이썬 함수를 정의하는 방법

다음은 함수를 정의하는 구문입니다.

def functionName(arguments):
    """This is the definition of this function"""
    statements
    return returnParam
  1. 키워드 def 는 함수를 정의하는 데 사용됩니다. functionName 은 함수의 이름입니다.
  2. argument 는 선택 사항입니다. 인수는 작업을 수행하기 위해 작동하는 값을 제공합니다.
  3. 콜론 (:)은 함수 헤더를 종료합니다.
  4. """This is the definition of this function"""docstring 이며 함수의 기능을 설명하는 선택적입니다.
  5. statements는 함수의 본문을 나타냅니다.
  6. return 문은 선택적으로 결과를 호출자에게 반환합니다.

파이썬 함수 예제

def language(p):
    """Function to print a message"""
    print("Programming language:", p)

여기서 호출자로부터 전달되는 하나의 인수 ‘p’를 갖는 함수 ‘language’가 정의됩니다. 함수 안에는 인자 p 를 포함하는 메시지를 출력하기위한 docstring 과 print 문이 있습니다.

파이썬에서 함수 호출

프로그램의 어느 곳에서나 함수를 호출 할 수 있습니다. 함수는 이름으로 필요한 매개 변수를 사용하여 호출 할 수 있습니다.

language('Python')
Programming language: Python

반환진술

return 문은 컨트롤을 함수가 호출 된 코드로 다시 전송합니다. 함수 정의의 끝을 나타냅니다.

return 의 문법은 다음과 같습니다 :

return [values_to_be_returned]

함수에 return 문이 없으면 None 객체가 반환됩니다.

return 문 사용 예

def square(n):
    return n*n
print("Square of 4=", square(4))
Square of 4=16

이 코드에서 함수는 print 함수에서 호출되고 4는 인수로 전달됩니다. 함수 안에는 n * n 표현식이 있으며 그 결과는 함수가 호출 된 곳 ( print 문)으로 돌아갑니다.

파이썬 변수의 범위와 수명

변수의 범위는 변수에 액세스 할 수있는 곳입니다. 변수가 함수 내부에 선언되면 해당 함수 외부에서 액세스 할 수 없습니다. 이 유형의 변수를 로컬 변수라고하며 선언 된 함수에만 액세스 할 수 있습니다.

변수의 수명은 변수가 메모리에 존재하는 시간입니다. 함수 내에서 변수가 선언되면 컨트롤이 함수에서 벗어날 때 변수가 해제됩니다.

아래 예를 참조하십시오.

def fun():
    a = 12
    print("Value of a inside function:", a)
a = 24
fun()
print("Value of a outside function:", a)
Value of a inside function: 12
Value of a outside function: 24

이 코드에서 함수 내부의 변수 ‘a’와 함수 외부의 변수 ‘a’는 다른 변수입니다.

외부에서 함수 내부에 선언 된 변수에 액세스하려고하면 ‘NameError name’x ‘is not defined’라는 오류가 발생합니다. 그러나 함수 외부에서 선언 된 변수는 전역 범위를 가지며 내부에서 액세스 할 수 있습니다.

기능의 종류

파이썬의 함수는 두 가지 유형으로 분류 할 수 있습니다.

  1. 내장 함수 : 사전 정의 된 의미를 가지며 특정 작업을 수행합니다.
  2. 사용자 정의 함수 (User-defined functions) : 사용자 정의 작업을 수행하기 위해 다수의 명령문을 포함하는 사용자가 정의합니다.