ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [python] 함수
    파이썬 2023. 8. 21. 21:16

    함수

    함수 구조
    def 함수 이름 (매개변수 ):
        수행할 문장

     

    def add(a,b):
        return a+b
    
    a = 3
    b = 4
    c = add(a,b)
    print(c)

     

    매개변수 : 함수에 입력으로 전달된 값을 받는 변수 ex, a b

    인수 : 함수를 호출할때 전달하는 입력값 ex, 3 4

     

    입력값x 함수

    def add(): 와 같이 매개변수 없이 선언하면 입력값 없는 함수를 만들 수 있다.

     

     

    매개변수 지정 함수호출

    파이썬에서는 매개변수를 지정해서  호출할 수도 있다.

    매개변수를 지정해서 호출하게되면 순서에 상관없이 사용할 수 있다는 장점이 있다.

    result = add(b=7, a=3)
    여러 개의 입력값을 받는 함수

    몇개가 입력될지 모를때 사용한다.

    매개변수 이름앞에 *을 붙이면 입력값을 전부 모아 튜플로 만들어 준다.

    def 함수이름 (*매개변수):
    	수행할문장
    def add_many(*args):
        result = 0
        for i in args:
            result += i
        return result
    
    result = add_many(1,2,3)
    print(result)
    def add_many(choice, *args):
        if choice =='add':
            result = 0
            for i in args:
                result += i
        elif choice =='mul':
            result = 1
            for i in args:
                result *=i
        return result
    
    result = add_many('add',1,2,3)
    print(result)

     

    키워드 매개변수

    키워드 매개변수를 사용할 때는 매개변수 앞에 **를 붙인다.

    매개변수 kwargs 는 딕셔너리가 되고 모든 key=value 형태의 입력값이 딕셔너리에 저장된다.

    def print_kwarge(**kwargs):
        print(kwargs)
    
    print_kwarge(a=1)
    print_kwarge(name='foo',age=3)
    {'a': 1}
    {'name': 'foo', 'age': 3}

     

    매개변수에 초기값 설정하기
    • 매개변수에 입력값을 주지않아도 미리 값을 갖고 있게 할 수 있다. ex. man=True
    • 초깃값이 없는 매개변수는 초깃값이 있는 매개변수 뒤에 사용할 수 없다.
    • 초기화하고 싶은 매개변수는 항상 가장 뒤쪽에 놓아야한다.
    def say_myself(name,age,man=True):
        

     

    지역변수
    • 함수 안에서 선언한 매개변수는 함수 안에서만 사용되는 지역변수이다.

     

    함수 안에서 함수 밖의 변수를 변경하는 방법에는 크게 두가지가 있다.

    1. return문 사용

    2. global명령어 사용 : global a는 함수 안에서 함수 밖의 a변수를 직접 사용하겠다는 뜻이다. 그러나 함수는 독립적으로 존재하는것이 좋기때문에 global명령어를 사용하는것은 피해야한다.

     

     

    lambda 예약어

    함수이름 = lambda 매개변수1, 매개변수2, ... : 매개변수를 이용한 표현식
    • return명령어 없이 결괏값 리턴한다.
    • 함수를 한 줄로 간결하게 만들어준다.
    add = lambda a, b : a+b
    result = add(3,4)
    print(result)

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

    [python] 클래스  (0) 2023.08.26
    [python] 입출력  (0) 2023.08.21
    [python] 제어문  (0) 2023.08.20
    [python] 변수  (0) 2023.08.17
    [python] 자료형과 관련함수 총 정리  (0) 2023.08.17

    댓글

lee-ding