본문 바로가기
Python/Python

[Python] 함수

by 기록하는_사람 2022. 9. 26.

함수

📌 함수

: 매개변수(입력한 값)를 가지고 반환값(결과)을 내는 것.

 

📌 함수 사용 이유

① 반복되는 코드 정리.

    : 반복되는 코드를 함수로 묶어 코드를 정리할 수 있음.

② 보기 쉽게 정리 가능.

    : 코드를 함수화하면 보기 편리해지면서 프로그램의 흐름을 쉽게 파악할 수 있음.

def [함수명] (매개변수):
    [기능 구현]
    return [반환값]

 

📌 용어

① 매개변수(parameter) : 함수에 입력으로 전달된 값을 받는 변수.(아래에서 x, y를 의미)

② 인수(arguments) : 함수를 호출할 때 전달하는 입력값.(아래에서 2, 5를 의미)

def add(x, y):
    num = x + y
    return num

print(add(2, 5))    # 7

 

함수 - 매개변수가 없는 함수

📌 매개변수가 없는 함수.

def hello():
    return 'Hello'

print(hello())	# Hello

 

함수 - 반환값이 없는 함수

📌 반환값이 없는 함수.

def add(x, y):
    print(f"{x} + {y} = {x + y}")

add(2, 5)	# 2 + 5 = 7

 

함수 - 매개변수와 반환값이 없는 함수

📌 매개변수와 반환값이 없는 함수.

def hello():
    print("Hello")

hello()	# Hello

 

함수 - 매개변수의 값이 지정된 함수

📌 매개변수의 값이 지정된 함수.

주의) default값을 설정할 때는 오른쪽부터 설정해야 한다.

         default값 설정한 매개변수 뒤에 default값을 설정하지 않은 매개변수가 오면 오류가 나게 된다.

def add_ten(x, y = 10):
    print(f"{x} + {y} = {x + y}")

add_ten(2)	# 2 + 10 = 12
add_ten(2, 20)  # 2 + 20 = 22

 

함수 - 매개변수의 개수가 정해지지 않은 함수

📌 매개변수의 개수가 정해지지 않은 함수.

매개변수의 개수가 정해져 있지 않을 경우, 매개변수 앞에 *을 붙이면 사용할 수 있다.

def add(*args):
    num = 0
    for i in args:
        num += i
    return num

print(add(1, 3, 5, 7, 9))	# 25

 

함수 - 여러 개의 반환값을 가지는 함수

📌 여러 개의 반환값을 가지는 함수.

반환값을 여러개 주었을 경우, 값이 튜플로 반환된다.

값을 하나씩 받고 싶을 때는 변수를 여러개 주면 값을 하나씩 받을 수 있다.

def add_minus(x, y):
    return x + y, x - y

a = add_minus(10, 5)
print(a)    # (15, 5)

a, b = add_minus(10, 5)
print(a, b) # 15 5

 

람다 함수(lambda)

📌 람다 함수(lambda)

: 한 줄로 된 이름 없는 함수.

  lambda [인수] : [구문]

g = lambda x, y : x * y

print(g(5, 10))

 

내장 함수

📌 내장 함수

https://codingrecord2209.tistory.com/147

 

[Python] 내장 함수

enumerate( ) 📌 enumerate( ) : 인덱스와 해당 값 튜플로 반환하는 함수. enumerate( [리스트], [start] ) start는 인덱스 시작 값을 말하며, default 값은 0으로 생략 가능함. li = ['apple', 'banana', 'cherry..

codingrecord2209.tistory.com

 

'Python > Python' 카테고리의 다른 글

[Python] set  (0) 2022.09.27
[Python] class  (0) 2022.09.26
[Python] 문자열 대소 비교 | 유니코드  (0) 2022.09.23
[Python] if ~ in, if ~ not in  (0) 2022.09.22
[Python] 문자열 메서드  (0) 2022.09.22

댓글