728x90
함수란 어떤 기능(function)을 하는 것이다. 반복적인 작업이 있다면 함수화 시켜놓으면 재사용이 가능해서 코드의 효율성을 높여준다. 함수의 기본적인 형태는 다음과 같다.
def sum(a, b):
return a+b
c = sum(1, 2)
print(c)
결과 값
3
입력하는 파라메터의 기본값을 설정할 수도 있다. 해당하는 파라메터의 값을 입력하지 않으면 기본값으로 자동 할당된다.
def sum(a, b=1):
return a+b
c = sum(1)
print(c)
결과 값
2
입력하는 파라메터의 수가 가변적이면 어떻게 입력해야 할까? *args를 이용하면 된다.
def sum(*args):
sum = 0
for i in args:
sum += i
return sum
c = sum(1, 2, 3)
print(c)
결과 값
6
기본값이 할당된 파라메터의 경우는 **kargs를 이용하면 된다.
def kargs(**kargs):
return print(kargs)
kargs(a=1, b=2, c=3)
결과 값
{'a': 1, 'b': 2, 'c': 3}
*args와 **kwargs를 같이 사용하려면 다음과 같이 하면 된다.
def kargs(*args, **kargs):
return print(args, kargs)
kargs('a', 'b', 'c', a=1, b=2, c=3)
결과 값
('a', 'b', 'c') {'a': 1, 'b': 2, 'c': 3}
그리고 함수를 lambda를 이용해 한 줄로 작성할 수 있다.
sum = lambda a, b: a + b
print(sum(1, 2))
결과 값
3
728x90
'Programming > Python' 카테고리의 다른 글
[01. Python] 013. 예외처리 (0) | 2020.01.02 |
---|---|
[01. Python] 012. 클래스 (0) | 2020.01.02 |
[01. Python] 010. 제어문 – while (0) | 2019.12.29 |
[01. Python] 009. 제어문 – for (0) | 2019.12.29 |
[01. Python] 008. 제어문 – if (0) | 2019.12.25 |