ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Python] 함수
    Language/기초문법 2024. 5. 1. 17:16

    함수사용이유?

    특정기능을 재사용하기 위해서 사용.

     

     

    파이썬에서 제공하는 함수는 크게 2가지로 구분

    1. 내장함수

    : 파이썬에서 기본으로 제공해주는 함수

      ex) print(), input() 등


    2. 사용자정의함수

    : 사용자가 직접선언

    def addCal(): # 함수선언
        n1 = int(input('n1 입력 : '))
        n2 = int(input('n2 입력 : '))   
        print(f'n1 + n2 = {n1 + n2}')
    
    addCal()   # 함수호출

     

    1) 함수 호출

     - 함수 내에서 또다른 함수호출

    def fun1():
    	print('fun1 호출!')
        fun2()
    
    def fun2():
    	print('fun2 호출!')
        fun3()
        
    def fun3():
    	print('fun3 호출!')
        
    fun1()

     

    2) 인수와 매개변수

     - 매개변수,인자(Parameter) : 함수를 정의할때 사용하는 변수

     - 인수(Argument): 함수 호출할때 전달되는 실제 값

    def greet(customer): #매개변수: customer
    	print(f'{customer} 고객님 안녕하세요'}
    
    greet('홍길동') # 인수: 홍길동
    
    def printNumber(*numbers)
    	for number in numbers:
        	print(number, end='')
        print()

       - 인수와 매개변수 개수는 일치해야한다.

       - 매개변수 개수가 정해지지 않은 경우 '*'를 이용한다.

     

    3) 데이터 반환

    def calculator(n1,n2):
        n1 + n2
    
    print(calculator(10, 20))

     

    -> 위의 결과에 None 반환.

     

    return 키워드를 이용하면 함수 실행결과를 호출부로 반환할 수 있다.

    def calculator(n1,n2):
    	result = n1 + n2
        
        return result
     
    print(calculator(10,20))

     

    함수가 return을 만나면 실행을 종료한다.

    def calculator(n1,n2):
    	result = n1 + n2
        return result
        
        print('Hello') #return 뒤에 오는 print는 출력될 수 없음.
     
    print(calculator(10,20))

     

    4) 지역변수와 전역변수

     - 전역변수

     : 함수 밖에 선언된 변수로 어디에서나 사용은 가능하지만 함수 안에서 수정할 수는 없다.

     - 지역변수

      : 함수 안에서 선언된 변수로 함수 안에서만 사용가능하다

     - global  키워드

      : global을 사용하면 함수 안에서도 전역변수의 값을 수정할 수 있다

    num_out = 10 #전역변수
    def printNumbers():
    	num_out = 20 #지역변수( num_out변수가 수정되는게 아니라, 이름이 같은 새로운 지역변수 num_out생성됨)
    	print(f'num_out: {num_out}')
    
    printNumbers()
    print(f'num_out: {num_out}')
    num_out = 10 #전역변수
    def printNumbers():
    	global num_out 
    	num_out = 20 
    	print(f'num_out: {num_out}')
    
    printNumbers()
    print(f'num_out: {num_out}')

     

    'Language > 기초문법' 카테고리의 다른 글

    [Python] __name__전역변수  (0) 2024.05.08
    [Python] 모듈(Module)  (0) 2024.05.08
    [Python] 반복문 제어 (break,continue,pass)  (0) 2024.05.07
    [Python] 함수연습  (0) 2024.05.06
    [Python] 중첩함수, lamda 함수  (0) 2024.05.02
Designed by Tistory.