CHAPTER 02 간단한 함수 만들기

유동헌·2021년 9월 3일
0

열혈파이썬_기초편

목록 보기
2/14

01 함수 만들기1 : 인자 없는 것

# 반갑습니다
# 파이썬의 세계로 오신 것을 환영합니다

def greet(): # 함수의 정의
    print("반갑습니다")
    print("파이썬의 세계로 오신 것을 환영합니다")
    
print(greet()) # 함수의 호출

반갑습니다, 파이썬의 세계로 오신 것을 환영합니다, 이 두 문장을 한 번에 실행하고 싶다면?

함수라는 것에 묶으면 한 번의 명령으로 위의 두 문장을 실행시킬 수 있다.

def greet()

이는 파이썬 프롬프트에게, 지금부터 greet이라는 이름의 함수를 만들 거다, 라고 말하는 것.

들여쓰기 상태로 함수에 속하는 문장인지 아닌지를 판단한다.

02 함수 만들기2 : 인자 있는 함수

결국 함수라는 것은 여러 문장들을 담아 놓은 상자. 그런데 다음과 같이 함수를 만들어서 함수 안으로 값을 전달할 수도 있음.

def greet(name):
    print(name, "반갑습니다")
    print(name, "환영합니다")
    
print(greet("eden"))

# 출력
eden 반갑습니다
eden 환영합니다

def add(num1, num2):
    print(num1 + num2)
    
print(add(4, 5))

# 출력
9

name이라는 변수가 등장 = 매개변수. 함수를 호출할 때 매개변수에 넣어줄 값도 함께 전달해야함.

매개변수는 둘 이상이 될 수 있다.

연습문제

매개변수를 통해서 하나의 정수를 전달받아서 전달받은 수와 부호가 반대인 정수를 출력하는 함수를 만들어보자. 예를 들어서 함수에 3이 전달되면 -3이 출력되고 -3이 전달되면 3이 출력되어야 한다.

def reverse(num1):
    print(num1 * -1)
    
print(reverse(-5))
print(reverse(50))

# 출력
5
-50

매개변수를 통해서 두 개의 정수를 전달받아서 이 둘의 평균값을 계산해서 출력하는 함수를 만들어보자

def average(num1, num2):
    print(int(num1 + num2 / 2))
    
print(average(3, 5))

03 함수 만들기3 : 값의 반환이 있는 것

def adder2(num1, num2): # 함수 선언
    ar = num1 + num2
    return ar # 이는 변수 ar에 저장된 값을, 함수를 호출한 영역으로 되돌려주라는 뜻!

result = adder2(5, 3) # 함수를 호출하면, 먼저 adder2 함수가 호출이 되고 그 함수 안에서 되돌려주는 값 8이 adder2(5,3)을 대신하여 다음의 상태가 됨. 
# result = 8
print(result)
def adder2(num1, num2):
    return num1 + num2

result = adder2(5, 3)
print(result)
# 위 코드에서,
return num1 + num2 -> 덧셈이 먼저 진행이 되어 -> return 8 -> 이 값이 된다.

print(adder2(5,3))을 호출하면 모양새가 print 함수에 adder2을 전달하는 것처럼 보인다.
그러나 print 함수에 실제 전달되는 값은 adder2(5,3)이 반환하는 값이다. 즉 위의 문장을 실행하면,
먼저 adder2가 호출되고 그 결과로 8이 반환이 되어 다음과 같이 print 함수를 호출하게 된다.

print(adder2(5,3)) -> print(8)

연습문제

하나의 정수를 전달받아서 전달받은 수와 부호가 반대인 정수를 반환하는 함수를 정의해보자. 물론 정의한 함수를 호출해서 정상적으로 동작하는지 확인까지 해야 한다.

def number(num1):
    result = num1 * -1
    return result

print(number(-9))

# 출력
9

04 함수를 파일에 저장하기

05 파일을 불러와서 실행하기

06 주석을 달자

07 이름 달기 규칙 그리고 대소문자 구분

08 main 함수가 있는 방식으로 예제를 작성하자

def number(num1):
    result = num1 * -1
    return result

def main():
    print(number(-10))
    
main()

# 출력
10

def main() 함수의 사용

profile
지뢰찾기 개발자

0개의 댓글