728x90
728x90

 

함수 정의

def magician_hat(a):
    if a=="동전":
        return "토끼"
    elif a=="손수건":
        return "비둘기"
        
print(magician_hat("동전"))
print(magician_hat("손수건"))

 

호출

def hello(a):
    while(a>0):
        print("hi")
        a-=1
hello(3) #hi hi hi
 def hello(a):
   for x in range(a):
       print("hi")
hello(3) #hi hi hi
def big(a, b);
    if(a>b) :
        return a 
    elif(a<b):
        return b 
    else:
        return "두 수는 같습니다"

print(big(5,5))

 

return은 함수의 값

def add(a,b):
    return a+b 
c= add(150,130)
    
print(add(150,180))
print(c)
print(type(c))

# 330
# 280
# <class 'int'>
def add_all(*args): #여러 값을 매개변수로 가진다
    total=0
    for i in args:
        total=total+i 
    return total

print(add_all(1,6,7)) #14

args 키워드는 튜플로 사용되서 인덱스 사용도 가능하다

def phone(*args):
    print("회원님의 전화번호는 "+args[2]+"입니다")
phone("나래", "강남구", "010-1111")
#회원의 전화는 010-1111입니다

 

함수의 설명서
#함수의 설명서
def cheerup(name):
    """
    이 함수는 응원의 메세지를 출력하는 함수입니다
    인수로는 응원할 사람의 이름을 입력하면 됩니다
    """
    print("{}님 힘내세요".format(name))
    
help(cheerup) #설명서 출력
cheerup("홍길동")

 

 

범위에 따른 값

def func():
    num=10
    print("함수 호출 시 변수 값은", num)

num=20
func()

print("함수 호출 이후 변수 값은", num)

#함수 호출 시 변수 값은  10
#함수 호출 이후 변수 값은 20

전역변수

age=29

def birthday():
    print(age, "번째 생일을 축하")

birthday()
print(age, "번째 생일을 축하")

지역변수

def birthday():
    age=29 #지역
    print(age, "번째 생일을 축하")

birthday()
print(age, "번째 생일을 축하") #에러

 

글로벌

age=29 #전역
def birthday():
    global age
    age=30
    print(age, "번째 생일을 축하")

birthday() 
print(age, "번째 생일을 축하")

#30 번째 생일을 축하
#30 번째 생일을 축하

 

함수 디폴트 값 지정

def chice_menu(beverage="coke", food="burger"):
    print("주문한 음식은 {}과 {}입니다".format(beverage,food))

chice_menu()
chice_menu("milk","toast")

 

키워드로 인수를 입력

def my_family(c3,c2,c1):
    print("우리집 막내는", c3, "입니다")

my_family(c1="찬희", c2="혜지", c3="혜원")
#우리집 막내는 혜원 입니다
def my_family(**child):
    print("우리집 첫째는", child["c1"], "입니다")

my_family(c1="찬희", c2="혜지", c3="혜원")

 

재귀함수

#선착순 n명
#인덱스 0, 1, ... n-1
num=int(input())
print("선착순", num,"명")

def first_come(num):
    person=["구준", "잔디", "우빈", "지후"]
    if num==0:
        print("끝")
    else:
        print(person[num-1])
        first_come(num-1)
        
first_come(num)

 

 

람다(익명함수)

함수의 이름을 가지지 않고 인수와 실행 기능만 넣는다.

def add(a,b):
    return a+b 
print(add(4,5)) #9

#람다
print((lambda a,b:a+b)(4,5)) #9

 

728x90
728x90
블로그 이미지

coding-restaurant

코딩 맛집에 방문해주셔서 감사합니다.

,

v