파이썬 함수

함수의 정의와 호출

개발연습자1 2022. 11. 21. 10:52

1.함수란 입력값으로 어떤일을 수행한 뒤 결과 값을 출력하는 것

   자주 사용하는 함수는 파이썬에서 기본적으로 제공됨

 

 

 

2. 함수를 사용의 가장 큰 장점은 수많은 줄의 코드가 한줄의 함수로 

    정의 될수 있다는 점이다. 또한 중복 코드 사용의 줄임으로 실수를

    줄일 수가 있다.

 

 

 

3. 함수의 기본 형식

 

            함수는 기본적으로 def라는 함수로 정의 할수 있으며 함수의 명칭 옆에 가로로 파라미터 혹은 아규먼트를

            쓰는 것으로 입력값을 정의 한다. 또한 맨끝에 return을 통해 print처럼 함수를 통해 반환한 값을 나타날 수

            있다.

 

 

 

 

4. 함수 호출하기

 

def squared(number):
    result = number ** 2
    return result

 

          함수는 메모리내 stack 메모리 내에 저장되며 유저가 parameter값을 입력하면 stack 메모리에 저장된 함수가

          호출되어 parameter값을 넣고 return한 값으로 호출하게 된다.

 

def print_hello():
    print('hello')
    print('bye')
    print_hello()

       만일 함수값이 print만 가능한 경우 return값을 없어도 되기 때문에 안써도 된다.

 

 

 

5.함수의 파라미터 값,결과값이 2개인 경우

 

def pow_times(number,count):
    result = number**count
    return result
    pow_times(2,3)

 

파라미터 값이 2개 인경우 함수정의 부분에서 파라미터 값 하나를 쓰고 컴마를 찍고 다시 두번째 파라미터

값을 입력하면 된다.

 

 

def my_func(num1, num2):
    result1 = num1 // num2
    result2 = num1%num2
    return result1, result2
    my_func(10,5)

 

리턴 결과값이 2개 인 경우 return 뒤에 결과1,결과2로 컴마를 찍어 입력한다.

 

6. 디폴트 파라미터

 

디폴트 파라미터 함수는 파라미터 값을 입력하지 않아도 기본 디폴트 값이 출력되는 값이다.

 

def get_age(age=25):
    print("제 나이는 {}살입니다".format(age))
    get_age()

#디폴트는 기본

 

def get_na(age,name="mike"):
    print("제 이름은 {}이고 나이는 {}살입니다".format(name,age))

만일 서로다른 파라미터 값중 하나만 디폴트값이면 디폴트가 정의 되지 않은 값보다 무조건 뒤에 와야한다.

 

def get_na(age=28,name="mike"):
    print("제 이름은 {}이고 나이는 {}살입니다".format(name,age))
    get_na(name="김나나")

만일 디폴트 값이 2개 라면 함수를 정의하고 함수값을 입력할때 '=' 기호로 파라미티 값을 명시해야 한다.

 

 

7.람다 함수

 

리턴값이 한줄로 나오는 함수라면 람다 함수를 이용해 정의하고자 하는 함수를 한줄로 정의 할 수 있다.

 

def pow_some(number):
    return number**2
    pow_some(3)
    
    #같은 의미
    
    y = lambda number : number**2

8. 함수의 주석 달기

 

def my_func(num1, num2):
    '''
    이 함수는 두 수를 입력하면, 두수의 몫과 나머지를 리턴해 주는
    함수다.
    '''
    result1 = num1 // num2
    result2 = num1%num2
    return result1, result2

 

함수에 주석을 달경우 함수 밑에 ''' '''쓰고 그 안에 글을 쓰는것으로 코멘트를 달수 있다. 코멘트는 함수를 정의해도

출력되지 않는다.

반응형

'파이썬 함수' 카테고리의 다른 글

날짜와 시간 라이브러리  (0) 2022.11.22
라이브러리와 랜덤 모듈  (0) 2022.11.22
중첩 반복문 NESTED LOOPS  (0) 2022.11.18
반복문( LIST COMPREHENSION)  (0) 2022.11.18
반복문(whlie)  (0) 2022.11.18