반응형
함수란?
특정한 작업을 하나의 단위로 묶어 놓은 것
함수를 사용하면 불필요한 소스코드의 반복을 줄임
함수의 종류
- 내장 함수 : 파이썬이 기본적으로 제공하는 함수
- 사용자 정의 함수 : 개발자가 직접 정의하여 사용할 수 있는 함수
함수 정의하기
- 매개변수 : 함수 내부에서 사용할 변수
- 반환 값 : 함수에서 처리된 결과를 반환
def 함수명(매겨변수):
실행할 소스코드
return 반환값
예시)
# 더하기
def add(a,b):
return a+b
print(add(3,7))
=>10
파라미터 지정하기
파라미터의 변수를 직접 지정 할 수 있음
def add(a,b):
print('함수의 결과:',a+b)
add(b=3,a=7)
=>10
global 키워드
전역변수를 사용하기 위한 키워드로서 함수 바깥에서 선언된 변수를 참조함
a = 0
def func():
global a
a += 1
for i in range(10):
func()
print(a)
=> 10
이렇게 밖에 있는 a라는 지역변수를 전역 변수화 해서 함수 안에서도 쓸 수 있게 만든다.
여러 개의 반환 값
파이썬에서는 함수는 여러 개의 반환 값을 가질 수 있다.
def operator(a,b):
add_var = a+b
subtract_var = a-b
return add_var , subtract_var
a,b = operator(7,3)
print(a,b)
=> 10,4
람다 표현식
특정한 기능을 수행하는 함수를 한 줄로 작성 가능
함수의 이름이 없는 것이 특징
# 일반적인 함수 사용
def add(a,b):
return a+b
print(add(3,7))
=>10
# 람다 표현식 사용
print((lambda a,b : a+b)(3,7))
(lambda 매개변수 : 로직)(value)
=>10
예시)
array = [('홍길동',50),('이순신',32),('아무개',74)]
def my_key(x):
return x[1]
print(sorted(array,key=my_key))
=> [('홍길동',50),('이순신',32),('아무개',74)]
print(sorted(array,key=lambda x:x[1]))
=>[('홍길동',50),('이순신',32),('아무개',74)]
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,10]
result = map(lambda a,b: a+b,list1,list2)
print(list(result))
=> 7,9,11,13,15
이 자료는 동빈 나 님의 이코 테 유튜브 영상을 보고 정리한 자료입니다.
참고 : www.youtube.com/watch?v=m-9pAwq1o3w&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC
반응형
'Algorithm' 카테고리의 다른 글
[Algorithm] 12 강 : 그리디 알고리즘 개요(탐욕법) (0) | 2020.10.25 |
---|---|
[Algorithm] 11 강 : 자주 사용하는 라이브러리( 유용한 라이브러리 ) (0) | 2020.10.23 |
[Algorithm] 9 강 : 파이썬 문법 - 반복문 (0) | 2020.10.21 |
[Algorithm] 8 강 : 파이썬 문법 - 조건문 (0) | 2020.10.20 |
[Algorithm] 7 강 : 파이썬 문법 - 기본 입출력 (0) | 2020.10.19 |