(1) 함수
함수는 명령을 저장하는 역할을 합니다. 오늘은 def를 이용하여 함수를 직접 만드는 법을 배울거에요.
ex) def rain():
print("python")
rain()
이 코드를 실행하면 python이라는 문자열이 출력이 됩니다.
def 은 define의 줄인말로서 정의하다라는 의미입니다. 함수를 정의하여 실행시켜주는 코드이고
선언하여준 def를 다시 실행시키면 그 함수 안에 할당된 코드들이 바로 깔끔하게 실행됩니다 ;)
(2)파라미터
파라미터는 함수를 사용할때 같이 쓰이는 변수입니다. 함수에 넘겨주는 값이라고 하면 더욱 간단하겠네요. ^-^
def문을 이용하면서 파라미터를 쓰는 예제를 살펴보겠습니다.
ex) def rain(name):
print("python")
print(name)
rain("c_language")
를 출력하게되면
python
c_language
가 출력이 됩니다. def 함수 안에 파라미터 name을 넣고 print로 name을 출력시키게 되면 rain 안에 들어있는 문자열이 출력이 되는 그러한 구조이지요.
헷갈릴수도 있어서 name 과 c_language 가 이어져 있다는 표시로 글자 색을 입혀주겠습니다.
(3)다중 파라미터
자 이제 함수의 괄호안에 파라미터를 박아둬서 print로 출력시키는것은 우리가제대로 살펴봤었죠?
여러 개의 파라미터가 있는 경우 또한 살펴보는 시간을 가져보겠습니다.
ex) def sum_results(a, b):
print(a + b) sum_results(8 + 6)
을 하면 14라는 결과가 출력됩니다.
파라미터를 함수에서 이런식으로 선언을 해줄때는 ,로 나열하면 됩니다. 3수의 합을 구할때는 a,b,c 꼴이겠네요.
다른 연산도 가능하니 한 번 도전해보세요!
(4) return문
파라미터와 함수가 서로 합쳐진 꽃,정수같은 개념이라고 생각해요. 함수를 선언해주고 return에서 연산하여 값을 돌려주는데요.
ex) def back_multiple(x)
return x*x
print( back_multiple(7))
을 하면 49라는 값이 출력됩니다.
back_multiple의 파라미터 안에 있는 7이라는 숫자가 def에서 back_multiple 함수의 x로 들어가게 되고 이는 return에 있는 x에 관한 수식에 대입되어 7*7 = 49 라는 값으로서 돌려주게 되죠.
(5) 옵셔널 파라미터
파라미터에 대입되는 변수나 문자열을 고정으로 세팅할 수 있는건 아시죠?
필수로 고정시키지 않고 선택적으로 바꿔 줄 수 있는 파라미터가 존재합니다.
이를 옵셔널 파라미터라고 합니다. 자세히 예시로 살펴볼게요~
def food( 토스트, 떡볶이, 스테이크 ="삼겹살"):
print("아침엔 {}".format(토스트))
print("점심은 {}".format(떡볶이))
print("저녁으론 {}".format(스테이크))
food("토스트", "떡볶이" , "스테이크") # 옵셔널 파라미터를 적용
print()
food("토스트", "떡볶이") # 옵셔널 파라미터를 적용x
를 출력하면 결과는
아침엔 토스트
점심은 떡볶이
저녁으론 스테이크
아침엔 토스트
점심은 떡볶이
저녁으론 삼겹살
디폴트로 되어있는 식단은 토스트,떡볶이,삼겹살인데요 저녁에 삼겹살 대신에 스테이크가 땡기는 경우에는 마지막 파라미터에 새로운 음식인 스테이크를 넣어주면 저녁메뉴가 바뀝니다 ^-^. 옵셔널 파라미터를 적용한 것입니다.
적용하지 않는 경우는 토스트, 떡볶이만 파라미터에 넣어줘도 저녁으론 삼겹살 메뉴까지 같이 출력됩니다.