본문 바로가기

💻 Python/🔎기초 Python

4. 함수란 무엇인가 (내장 함수, 사용자 정의 함수)

4. 함수란 무엇인가

(1) 함수란?

  • 특정 동작을 손쉽게 재사용할 수 있도록 구성한 코드 형태
    • 함수로 잘 나눠두면, 조합하여 복잡한 기능을 체계적으로 구현할 수 있다.

(2) 내장 함수

  • 파이썬에 내장된 함수 (앞에서 사용된 많은 함수가 내장 함수)
    • print, type, len, del 등등
#help함수를 유용하게 사용하기! 
#함수를 어떻게 사용하면 될지 알려준다!
help(print)
Help on built-in function print in module builtins:

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.

(3) 사용자 정의 함수

  • 말 그대로 프로그램을 작성하는 사람이 마음대로 작성하여 정의한 함수
  • def 함수명 (매개변수 혹은 전달인자):
    실행할 명령어1
    실행할 명렁어2
    ......

    return 리턴값
    • def는 파이썬에서 함수를 나타내는 키워드
    • 함수명은 본인이 정하면되는데, 파이썬에 예약되서 쓰고 있는 키워드는
      변수로도 쓸 수 없고 함수 이름으로도 쓸 수 없다
    • [return 리턴값]은 있어도 되고 없어도 된다.
    • 함수의 호출은 함수명(매개변수 혹은 전달인자)형식으로 한다
#매개변수 : 입력값을 표현하는 변수로써 함수내에서 해당 변수명으로 사용된다.
#dect_10_or_11함수에서 매개변수는 number
#전달인자 : 함수에게 전달해주는 인자(값)
#전달인자는 10,11,12이다. 

def dect_10_or_11(number):
    if number == 10:
        print("number는 10이다.")
    elif number == 11:
        print("number는 10은 아니지만 11이다.")
    else:
        print(f"number는 10도 11도아니고 {number}다.")

dect_10_or_11(10)
dect_10_or_11(11)
dect_10_or_11(12)
number는 10이다.
number는 10은 아니지만 11이다.
number는 10도 11도아니고 12다.
#매개변수를 지정하지 않고 생성한 함수는 전달인자도 쓸 수 없다
def hello():
     print("안녕하세요.")
hello()
안녕하세요.