본문 바로가기

함수 와 응용 - 자세한 파이썬

취미/프로그래밍 2021. 8. 5.
반응형

 

 

기본개념


간단하게 초등학교에서 배우는 1을 함수 상자에 넣으면 +2를 더해줘서 결과값이 3이 나오는 함수상자를 생각하면 된다.

여기서 함수상자를 함수 라고 생각하면 되고 

 

같은 내용을 반복해서 해야할때

반복되는 내용을 함수로 정의해서 이용하면 쓸데없이 반복되는 내용을 많이 줄일 수 있다.

 

보기쉽거나 나중에 수정할때 수월하기 위해서 

함수를 사용하지 않고 똑같은 내용을 반복 하여 프로그래밍 해놓는다면 찾을때도 오래걸리고 

반복되는 부분에서 오류가 났다면 반복되는 부분 하나하나를 다 수정하려면 시간도 오래 걸리기때문에 함수를 사용하는게 시간을 줄일 수 있다.

 



 

예시


예시1) 아무 인자 없는 경우

 

 

 

 

def chat():   #def 는 definition (정의)   즉, chat(): 이라는 함수를 정의 합니다. 
    print("김씨: 안녕")
    print("박씨: 반가워")
 

chat() # chat 이라는 함수를 사용합니다.
chat()

 

 

결과값

 

 

예시 2)   인자 사용

def chat(name1, name2):   # 함수상자에 들어온 첫번째는 변수 name1로 두번째는 name2로 정해준다.

  print("{}: 안녕" .format(name1)) # {} 위치에 name1 변수값을 넣어준다.

  print("{}: 반가워" .format(name2)) # {} 위치에 name2 변수값을 넣어준다.


chat("김씨","박씨") # 함수상자에 넣을 값을 첫번째는 김씨, 두번째는 박씨 로 정해준다.

 

결과값

 

 

예시 3)   인자와 숫자 사용

 

 

def chat(name1,age1,name2,age2):   # 함수상자에 들어온 첫번째는 변수 name1로 두번째는 age1으로 세번째는 name2로 네번째는 age2으로 정해준다.

  print("{}: 안녕! , 나는 {}살이야!" .format(name1,age1)) # {} 첫위치에 name1 변수값을 두번째는 age1 넣어준다.

  print("{}: 반가워, , 나는 {}살이야!" .format(name2,age2)) # {} 첫위치에 name2 변수값을 두번째는 age2 넣어준다.


chat("김씨",20,"박씨",21) # 함수상자에 넣을 값을 첫번째는 김씨, 두번째는 20으로 세번째는 박씨 , 네번째는 21으로 정해준다.

 

 

 

결과값

 

 

예시 4) 숫자 더하기

 

def sum1(a, b): # sum1이라는 함수를 정의하고 첫번째 인자는 a, 두번째 인자는 b라고 정한다. 

  result1 = a + b # result 변수값은  a와 b 의 값을 더한 값으로 나타낸다.

  return result1 #결과를 result1 변수로 반납한다.

 
x = sum1(3, 6) # 3,6를 sum1함수에 넣어주고 결과값 result1를 x변수에 넣어준다.

print(x) # x변수 값을 print한다.

 

결과값

 

 

예시5) if 함수와 응용 (편의점에서 주류 살때)

 

def check1(name1, age1): # 첫번째 인자는 name1변수로 , 두번째 인자는 age1변수로 넣어준다.

  if age1 <19: # 나이가 19살 미만이라면

    print("안녕하세요! {}는 주류를 사실수 없습니다. " .format(name1)) 

  elif age1 >= 19 and age1 <= 60: # 나이가 19살 이상이고 60살이하라면

    print("안녕하세요! {} 감사합니다. " .format(name1)) 

  else: # 그 나머지값들은 나이가 60살이상이라서 else로 나타내준다. 

   print("안녕하세요! {} 건강 생각하셔야죠 " .format(name1)) 

 

check1("미성년자", 18) 

check1("고객님", 19)

check1("고객님", 60)
 
check1("어르신", 61)

 

 

 

결과값

 

 

 

그외 더 알고싶다면

https://wikidocs.net/24

반응형

댓글