본문 바로가기

Language/Python

[Python] 함수

기본 구조

def functionName(arguments):
    """
    Statements
    Do something
    """
    return #something

변수에 assign, reassign가능 - 레퍼런스 가능

def fun1(arg1, arg2):
    return arg1+arg2

fun2 = fun1

매개변수로 함수 사용 가능

def fun1(arg1, arg2):
    return arg1+arg2

def fun2(fun1, arg1, arg2):
    return arg1 + fun1(arg1, arg2)

매개변수 개수 모를 때

def fun1(*args):
    for i in args:
        print(i)

매개변수에 초깃값 미리 설정하기 가능

def fun1(arg=3):
    print(arg)

함수 밖의 변수를 함수 안에서 변경하기

  1. return 이용위와 같이 함수의 리턴값으로 a를 갱신시킬 수 있다
  2. a = 10 def fun1(a): a+=1 return a a = fun1(a)
  3. global 명령어global 명령어는 함수 밖의 변수를 직접 사용하겠다는 뜻. 하지만 함수는 외부에 의존적이지 않은 것이 좋으므로 1번 방식을 지향하자
  4. a = 10 def fun2(): global a a +=1 fun2()

lambda 이용

함수 생성하는 예약어. 함수를 간결하게 만들 때 주로 사용

fun1 = lambda a,b:a*b
result = fun1(2,4)

위 코드는 아래와 동일하다

def fun1(a,b):    return a*bresult = fun1(2,4)

++그냥 상식..

arguments는 해당 함수 내에서만 유효

return하면 함수 멈춤. 아무것도 return 안할수도 있음. return문 없어도 됨

'Language > Python' 카테고리의 다른 글

[Python] 예외  (0) 2021.08.20
[Python] 모듈  (0) 2021.08.20
[Python] 제어문  (0) 2021.08.20
[Python] 입출력  (0) 2021.08.20
[Python] 집합  (0) 2021.08.20