4-1 파이썬 함수02
- FunctionTest06
# 매개변수의 제약이 없어요. ===> 변수앞에 *을 붙여요!
# 전달되는 매개변수의 자료형은 tuple 로 받습니다.
def sum(*args):
print(args)
print(type(args))
sum(1,2,3)
sum(1,2,3,4,5,6)
sum()
sum(1,2)
sum(1)
- FunctionTest07
# 매개변수의 개수에 제약이 없이 전달된 모든 수 중에 가장 큰수를 찾아 반환하는 함수를 정의
# (1,3,0,9,7)
def max(*args):
if len(args) == 0:
return "데이가 없어요!"
r = args[0]
for i in args:
if i >r:
r = i
return r
print(max(2,3))
print(max(1,3,5,7))
print(max(4,6,2))
print(max())
# 매개변수의 개수에 제약이 없이 전달된 모든 수의 합은 누적하여 반환하는 함수를 정의
# def sum(*n):
# r = 0
# for i in n:
# r = r + i
# return r
#
# print(sum(1,2,3))
# print(sum(10,20,30,40,50,60,70))
# print(sum())
- FunctionTest08
# 파이썬의 함수는 return 문에 의하여 여러개의 값을 반환할 수 있어요.
# 두 수를 매개변수로 전달 받아 더하기 결과와 곱하기 결과를 반환하는 함수를 정의
# 함수가 반환하는 값을 따로 따로 변수에 담을 수도 있고
# 하나의 변수에 담을 수도 있어요!(그 때는 튜플로 받아 옵니다.)
def sum_and_mul(a,b):
return a+b,a*b
r = sum_and_mul(3,4)
print(r)
print(type(r))
# add,mul = sum_and_mul(3,4)
# print(add)
# print(mul)
# print(add,mul)
- FunctionTest09
# 함수의 매개변수의 순서에 받도록 호출시에 값을 전달 해 주어야 합니다.
# 이때, 순서를 잘 모를 때에는 변수명을 명시하여 값을 전달 해 주도록 합니다.
def info(name,age):
print("이름:",name)
print("나이:",age)
info("이순신",20)
info(40,"홍길동")
info(age=40, name="홍길동")
- FunctionTest10
# 함수의 매개변수에 초기값을 설정 할 수 있어요!
# 이름, 나이, 성별을 전달받아 정보를 출력하는 함수를 정의해요.
# 성별은 남자인지의 여부인 boolean을 전달받도록 하고
# 전달되지 않으면 기본값 True를 설정하도록 합니다.
# def say_myself(name,old,man=True):
# print('나의 이름은 %s 입니다.'%name)
# print('나이는 %d 입니다.'%old)
# if man:
# print('남자입니다.')
# else:
# print('여자입니다.')
#
# say_myself('이순신',40)
# say_myself('유관순',20,False)
#기본 값을 줄때는 맨끝의 매개변수부터 차례로 지정할 수 있어요!
def say_myself(name,old,man=True):
print('나의 이름은 %s 입니다.'%name)
print('나이는 %d 입니다.'%old)
if man:
print('남자입니다.')
else:
print('여자입니다.')
print('이순신')
print('김유신',40)
print('유관순',20,False)