-return 키워드
'''
함수(function)
1. 여러개 값을 리턴할 수 있다(착시 효과로서 반드시 1개만 리턴 가능하다.)
==> 집합형에 먼저 저장하고 나중에 집합형을 리턴한다.
2. return 키워드 2가지 용도 (자바도 동일 )
가. 리턴 값을 반환하기 위해서 (주목적)
나. 함수를 중지 목적
'''
#1. 여러개 값을 리턴할 수 있다
def fun():
return 10,20
result =fun()
print(result) # (10,20)
#2. 함수를 중지 목적
def fun2():
print("fun2")
if True: return #함수 중지
print("fun2-1")
print("fun2-2")
fun2()
print("end")
- default 파라미터
'''
1.(기본적으로)함수 호출 시 전달 값과 함수의 변수의 갯수가 일치 되어야 한다.
2.defalut 파라미터 사용 ===> 함수의 변수가 더 많은 경우
'''
#1.(기본적으로)함수 호출 시 전달 값과 함수의 변수의 갯수가 일치 되어야 한다.
def fun():
pass
fun()
# 2. defalut 파라미터 사용 ===> 함수의 변수가 더 많은 경우
def fun2(n=10):
print("fun2",n)
fun2() #값을 넣어주지 않으면 디폴트 값이 출력된다.
fun2(100)
def fun4(x,n=10,n2=20):
print("fun4",x,n,n2)
#fun4() 에러 x값은 꼭 있어야함
fun4(100)
fun4(1,2)
fun4(1,2,3)
-packing
'''
1.(기본적으로)함수 호출 시 전달 값과 함수의 변수의 갯수가 일치 되어야 한다.
2.defalut 파라미터 사용 ===> 함수의 변수가 더 많은 경우
3.packing (*이용) ==> 전달값이 더 많은 경우
==> 한꺼번에 전달되는 여러 개의 전달 값이 tuple로 묶어서 전달됨
*표시는 한 번만 쓸 수 있음
'''
def fun(*x):
print(x)
fun(10)#(10,)
fun(10,20)#(10, 20)
fun(10,20,30)#(10, 20, 30)
fun(10,20,30,40)#(10, 20, 30, 40)
def fun2(y,*x):
print(y,x)
fun2(10) #10 ()
fun2(10, 20) #10 (20,)
fun2(10, 20, 30) #10 (20, 30)
fun2(10, 20, 30, 40)#10 (20, 30, 40)
def fun2(y,*x):
print(y,x)
def fun3(y=999,*x):
print(y,x)
fun3() #999 ()
fun3(10) #10 ()
fun2(10, 20) #10 (20,)
fun2(10, 20, 30) #10 (20, 30)
fun2(10, 20, 30, 40)#10 (20, 30, 40)
- named 파라미터
'''
1.(기본적으로)함수 호출 시 전달 값과 함수의 변수의 갯수가 일치 되어야 한다.
2.defalut 파라미터 사용 ===> 함수의 변수가 더 많은 경우
3.packing (*이용) ==> 전달값이 더 많은 경우
==> 한꺼번에 전달되는 여러 개의 전달 값이 tuple로 묶어서 전달됨
*표시는 한 번만 쓸 수 있음
4. named 파라미터
==> 함수호출 시 변수명=값 형태로 호출하는 방식이다.
==> 함수의 변수가 여러 개인데, 특정 변수에만 값을 저장할 때 사용된다.
나머지는 defalut 파라미터로 만든다.
'''
def fun(x,y):
print(x,y)
fun(10,20)
fun(x=100,y=200)
fun(x=1000,y=2000)
#가정
#a와 d에만 값을 저장하고 싶을 때
def fun2(a=0,b=0,c=0,d=0,e=0,f=0):
print(a,b,c,e,d,f)
fun2(a=100,d=200)
# 혼합가능
def fun3(name,age,address):
print(name,age,address)
fun3("홍길동",20,"서울")
fun3(name="홍길동",age=20,address="서울")
fun3("홍길동",age=20,address="서울")
'python' 카테고리의 다른 글
| [python] 일급객체 (0) | 2022.09.26 |
|---|---|
| [python] Dict Packing (0) | 2022.09.26 |
| [python] 함수 기본 | 리턴 타입 명시 (0) | 2022.09.26 |
| [python] generator (0) | 2022.09.22 |
| [python] Dict Comprehension (1) | 2022.09.22 |