[python]_함수(1)

Hi K·2022년 10월 11일
0

파이썬기초

목록 보기
9/12

<< 함수 >>


반복적으로 사용하는 기능을 묶어서 함수로 정의하면 간편하게 사용할 수 있다.
▶ 기본 문법

         def 함수이름(매개변수) :
             <수행할 내용1>
             <수행할 내용2>
             <수행할 내용3>
             return

▶ 매개변수
- 함수 안에서 사용할 값을 전달하는 변수로 <수행할 내용> 문장에서 변수로 사용된다.
- 함수 정의문에서는 매개변수로서 선언되며 실제로 함수를 호출할 때는 인자값으로 전달된다.
▶ 용어
- def : 함수를 정의할 때 사용하는 키워드
- return : 함수의 결과값을 반환하는 키워드
- 입력값 = 인수, 입력 인수, 인자
- 결과값 = 출력값, 리턴값, 돌려주는 값, 반환 값


  • 기본적인 함수의 예제(완전한 실행문)
    • 파이썬은 유니코드를 지원해서 한글로도 변수선언이 가능함
def 디귿춤():
    print("팔을 얼굴앞으로")
    print("관절을 역으로 꺾고")
    print("디귿자 모양으로 만듭니다.")


  • 기본적인 함수의 예제(불완전한 실행문)
def plus(a):
    print(a + 1)

a값을 주지 않으면 에러가 난다

# 함수를 실행했을 때 
plus(5)

# 함수를 선언하면 힙에 저장된다
def plus(a):
	print(a + 1)

# 함수를 불러오면 스택에 영역이 생기고 a값이 들어간다
# 블럭(함수나 반목문에서 들여쓰기한것)은 스택에 별도의 공간을 가진다
plus(5)

# 힙에 저장된 함수에 a값이 전달되고 함수를 실행한다
# 함수는 호출될때마다 갔다와야 한다. 반복문과 차이점

# 함수실행이 끝나면 스택에 할당된 영역은 사라진다


지역변수

함수 내부에 선언된 변수는 함수 외부에서 호출할 수 없습니다.
함수나 기타 블록 내부에 선언된 변수를 "지역변수"하고 부릅니다
지역화폐가 해당 지역내에서만 통용되듯, 지역변수도 다른지역에서 호출할 수 없습니다.

# a는 plus함수 내의 지역변수기 때문에 plus함수 밖에서 쓰면 에러가 난다
print(a)

return

plus를 호출했을때 a + 1이 콘솔에 찍힙니다.
print(plus(5)) => 몇이 찍힐까요?

 print(plus(5))


return 구문은, 함수 내 마지막 지점에 사용할 수 있습니다.
return 구문이 실행되면, 함수가 종료되며 동시에 해당함수의 결과값이
호출한 위치에 할당됩니다.

def plus2(a):
    return a + 1
print(plus2(5))

def plus(a):
	print(a + 1)
    
def plus2(a):
    return a + 1
print(plus2(5))

print(plus(5)) 
print("first func")
# plus()함수에 의해 6이 출력되고, 
# 전달되는 값이 없기 때문에 print(None)이 출력
print(plus2(5))
print("second func")
# return에 의해 결과값 6이 반환되어 출력됨
# print(plus2(5)) ==> print(6)

profile
파이썬초짜의 기록

0개의 댓글