728x90
반응형
SMALL
■ 함수
#1 기능의 프로그램
#2 PL/SQL : 프로시저(호출) VS 함수(표현식 호출) 의 차이 => 호출방식
#3 반복되는 코드를 하나로 묶어서 처리하는 방법
def 함수이름(형식매개변수, 형식매개변수, ... ):
수행할 문장
...
[return 값] (필수X)
함수이름()
def message():
print("오늘 하루도 행복하자!!")
dir() # 함수명 추가
message() # PL/SQL 프로시저 와 비슷
def message():
print("오늘 하루도 행복하자!!")
return 'happy'
x = message()
x
def message():
print("오늘 하루도 행복하자!!")
return 'happy' # return 문을 수행한 후 함수는 종료
print('오늘 하루도 수고 하셨습니다.')
x = message()
x
# type 관련없이 위치에 대응되게 값을 지정
def hap(arg1, arg2): # 스칼라타입
return arg1 + arg2
hap(10, 20)
hap('10', '20') # 오버로딩, 객체지향 프로그램 수행된다.
# 가변인수
hap(10, 20)
hap(10, 20, 30, 40)
hap(10, 20, 30, 40, 50)
def 함수명(*가변인수): # 가변인수:튜플타입
for i in 가변인수(변수명):
수행할 문장
# 누적합
def hap(*arg):
total = 0
for i in arg:
total += i
return total
hap(10, 20)
hap(10, 20, 30, 40)
hap(10, 20, 30, 40, 50)
def 함수명(인수1, *가변인수):
for i in 가변인수(변수명):
수행할 문장
# 문자, 숫자 로직구현
def cal(arg1, *arg2):
if arg1.lower() == 'sum':
total = 0
for i in arg2:
total += i
elif arg1.lower() == 'mulitiply':
total = 1
for i in arg2:
total *= i
else:
total = None
return total
cal('sum', 1,2,3,4,5)
cal('mulitiply', 1,2,3,4,5,6,7)
x = (1,2,3,4,5)
# 오류발생
cal('sum', x)
# 가변인수에 list 값, 튜플로 전달 할때 꼭 *변수명으로 작성할 것.
# *변수명
cal('sum', *x)
728x90
반응형
LIST