[Python] 연습

[Python] 기초 문법 6

Simon Yoon 2022. 1. 8. 23:13

함수

def 함수이름(매개변수1, 매개변수2, ...):
    code
    ...
    return

 

함수의 형태

- parameter와 return이 존재

def add(x1, x2):
    y = x1 + x2
    return y

 

- return이 없는 함수

def noReturn(a, b):
    print(a + b)

 

- parameter가 없는 함수

def noParam():
    a = '매개변수가 없는 함수'
    return a
noParam()
# 매개변수가 없는 함수

 

- parameter와 return이 둘 다 없는 함수

def noBoth():
    print('모두 없는 함수')
noBoth()
# 모두 없는 함수

 

매개변수의 수가 일정하지 않을 때 함수의 구현

'*'을 매개변수 앞에 사용함으로써 여러 개의 매개변수를 받을 수 있음

def add_many(*args):
    total = 0
    for item in args:
        total += item
    
    return total

add_many(1, 2, 3, 4, 5)
# 15

 

매개변수의 초기값을 미리 지정

매개변수가 고정된 값을 사용하거나 초기값을 가질 때 사용할 수 있음

함수의 선언에서 초기값을 지정한 매개변수가 가장 뒤로 와야 함

def initVal(a, b = 5):
    result = a + b
    return result

initVal(3)
# 8

 

Lambda 함수

f = lambda a, b: a + b

print(f(3, 5))
# 8
strings = ['yoon', 'simon', 'jessica', 'cat']

# 글자 길이로 정렬
strings.sort(key = lambda s:len(s))
strings
# ['cat', 'yoon', 'simon', 'jessica']

 

재귀 함수

자기 자신을 호출하여 사용하는 함수

재귀 호출을 탈출할 수 있는 코드가 반드시 필요함

def recursive(n):
    if n > 0:
        print(n)
        
    recursive(n-1)
recursive(5)
# 5 4 3 2 1

'[Python] 연습' 카테고리의 다른 글

[Python] 판다스 문자열 구분자로 나누기  (0) 2022.03.11
[Python] Selenium Data Crawling 준비 (맥 용)  (0) 2022.02.17
[Python] 기초 문법 5  (0) 2022.01.07
[Python] 기초 문법 4  (0) 2022.01.07
[Python] 기초 문법 3  (0) 2022.01.07