본문 바로가기

강의/파이썬

20201010 점프투파이썬 정리

1. 함수란?

- 입력값을 가지고 어떤 일을 수행한 다음에 그 결과물을 내어놓는 것

 

2. 함수를 사용하는 이유는?

- 반복되는 부분이 있을 경우 똑같은 내용을 반복해서 작성하는 것을 피하기 위해 사용한다.

 

3. 파이썬 함수의 구조

def는 함수를 만들 때 사용하는 예약어

def 함수명(매개변수) :
	실행문장
    return 결과값

 

- 매개변수(parameter) VS 인수(arguments)

- 매개변수 : 이 함수에 입력으로 전달되는 값을 받는 변수

- 인수 : 함수를 호출할 때 전달하는 입력값

def add(a, b): # a, b는 매개변수
    return a + b
    
num = add(3, 4) # 3, 4는 인수
print(num) # 결과 7

 

4. 입력값이 없는 함수

def say() :
	return 'Hi'
    
a = say()
print(a) # Hi

 

5. 결괏값이 없는 함수

def add(a, b) :
	print("a + b = %d" % a+b) # 3 + 4 = 7
    
a = add(3, 4)
print(a) # None

 

6. 입력값도 결괏값도 없는 함수

def say() :
	print('Hi')
    
say() # Hi

 

7. 매개변수 지정하여 호출하기

def add(a, b) :
	return a+b
    
result = add(a=3, b=7) # a에 3, b에 7
print(result) # 10

 

8. 여러 개의 입력값을 받는 함수

def add_many(*parameter) : # *을 쓰면 입력값을 전부 모아서 튜플로 만들어 준다.
    result = 0
    for i in parameter :
    	result = result + i
    return result
   
result = add_many(1,2,3)
print(result) # 6

result = add_many(1,2,3,4,5,6,7,8,9,10)
print(result) # 55

 

9. 키워드 파라미터 **

def print_a(**a): 
	print(a) # 딕셔너리로 만들어서 출력

print_a(a=1) #  {'a': 1}
print_a(name='boo', age=2) # {'age': 2, 'name': 'boo'}

 

10. 함수의 결괏값은 언제나 하나

def add_mul(a,b) :
	return a+b, a*b
    # return a, b # 주석풀어도 실행되지 않음
    
result = add_mul(3,4) # (7, 12)
result1, result2 = add_mul(3,4) # result1 = 7, result2 = 12

 

11. 매개변수에 초깃값 미리 설정

def say(name, old, man=True) : # 초기화시키고 싶은 매개변수를 항상 뒤쪽에 놓는다.
	print("이름 %s" % name)
    print("나이 %d " % old)
    if man :
    	print("남자")
    else :
    	print("여자")
        
say("홍길동", 22) # say("홍길동", 22, True)와 같은 결과
say("홍길동", 22, False)

 

12. 함수 안에서 함수 밖의 변수를 변경하는 방법

# 1번째
a = 1
def range_a(a) :
	a = a + 1
    return a

a = range_a(a)
print(a) # 2

# 2번째
a = 1
def range_a(a) :
	global a # 함수 안에서 함수 밖의 a 변수를 직접 사용하겠다.
    a = a + 1
    
range_a()
print(a) # 2

 

13. lambda

- lambda는 def와 동일한 역할을 하는 예약어로 보통 함수를 한 줄로 간결하게 만들 때 사용한다.

add = lambda a, b : a + b
'''
def add(a, b) :
	return a + b
'''
result = add(3, 4)
print(result) # 7

'강의 > 파이썬' 카테고리의 다른 글

20201104 점프투파이썬 예외 처리  (0) 2020.11.04