반응형
오늘은 파이썬의 함수에 대해서 알아보는 시간을 갖도록 하겠다.
1. 함수
(1) 함수 선언
def hello(world):
print("Hello", world)
(2) 함수 호출
hello("Python!")
hello(7777)
Result
Hello Python!
Hello 7777
(3) 리턴 함수 선언 및 호출
def hello_return(world):
val = "Hello" + str(world)
return val
str = hello_return("Python!!!!")
print(str)
Result
HelloPython!!!!
(4) 다중 리턴 함수
def func_mul(x):
y1 = x * 100
y2 = x * 200
y3 = x * 300
return y1, y2, y3
val1, val2, val3 = func_mul(100)
print(val1, val2 ,val3)
Result
10000 20000 30000
(5) 데이터 타입 변환
def func_mul2(x):
y1 = x * 100
y2 = x * 200
y3 = x * 300
return [y1, y2, y3]
lt = func_mul2(100)
print(lt, type(lt))
Result
[10000, 20000, 30000] <class 'list'>
(6) 튜플을 인자로 받는 함수
def args_func(*args):
for i,v in enumerate(args):
print(i, v)
args_func('kim')
args_func('kim', 'park')
args_func('kim', 'Park', 'Lee')
Result
0 kim
0 kim
1 park
0 kim
1 Park
2 Lee
(7) 딕셔너리를 인자로 받는 함수
def kwargs_func(**kwargs):
for k, v in kwargs.items():
print(k, v)
kwargs_func(name1='Kim')
kwargs_func(name1='Kim', name2='Park', name3='Lee')
Result
name1 Kim
name1 Kim
name2 Park
name3 Lee
(8) 여러가지 타입을 인자로 받는 함수
def example_mul(arg1, arg2, *args, **kwargs):
print(arg1, arg2, args, kwargs)
example_mul(10, 20)
example_mul(10, 20, 'park', 'kim', age1=24, age2=35)
Result
10 20 () {}
10 20 ('park', 'kim') {'age1': 24, 'age2': 35}
(9) 중첩 함수 (클로저)
def nested_func(num):
def func_in_func(num):
print('>>>' ,num)
print("in func")
func_in_func(num + 1000)
nested_func(10000)
Result
in func
>>> 11000
(10) 함수 힌트
- 아래 코드에서 인자로 받는 x를 int 타입으로 받는다는 것을 표시.
- "-> list" 는 리턴 타입이 list 타입이라는 것을 표시
def func_mul3(x : int) -> list:
y1 = x * 100
y2 = x * 200
y3 = x * 300
return [y1, y2, y3]
print(func_mul3(5))
Result
[500, 1000, 1500]
반응형
'Programming > Python' 카테고리의 다른 글
[Python] 파이썬 클래스(class)에 대해서 알아보자. (0) | 2021.07.25 |
---|---|
[Python] 파이썬 람다(Lambda)에 대해서 알아보자. (0) | 2021.06.20 |
[Python] 파이썬 반복문에 대해서 알아보자. (for문) (0) | 2021.06.03 |
[Python] 파이썬 반복문에 대해서 알아보자. (while문) (0) | 2021.06.03 |
[Python] 파이썬 조건문에 대해서 알아보자. (if문, 관계 연산자, 논리 연산자) (0) | 2021.05.17 |