Professional Documents
Culture Documents
정 보
( 파이썬 21 )
2학기 정 보
1. 함수란?
▶ 작업을 추상화함으로서 모듈화된 단위로 작업 처리 가능
: 어떤 특정 작업을 수행하거나, 일련의 작업들을 묶어서 새로운
단위 작업으로 정의
➔ 즉. 특정 작업을 수행하는 코드의 집합
2
2학기 정 보
1. 함수란?
▶ 사용(호출)되기 전 내용이 미리 정의되어야 함
➔ "정의 후 재 사용"
매개변수 입력
- def 키워드로 함수 정의
- 반환값에 대한 형식 지정 없음
반환(결괏)값
3
2학기 정 보
2. 함수의 4가지 유형
➔ 매개변수와 반환값 유무에 따라
함수 정의 함수 호출
def 함수이름() :
유형1 함수이름()
명령문
def 함수이름() :
유형2 명령문 변수 = 함수이름()
return 반환값
def 함수이름(매개변수) :
유형3 함수이름(매개변수)
명령문
def 함수이름(매개변수) :
유형4 명령문 변수 = 함수이름(매개변수)
return 반환값
4
2학기 정 보
2. 함수의 4가지 유형
가. 매개변수(X), 반환값(X)
함수 정의 함수 호출
def 함수이름() :
함수이름()
명령문
f() # 드디어 함수 내용 실행
함수 정의만… 실행 결과는?
f()
5
2학기 정 보
2. 함수의 4가지 유형
나. 매개변수(X), 반환값(O)
함수 정의 함수 호출
def 함수이름() :
명령문 변수 = 함수이름()
return 반환값
6
2학기 정 보
2. 함수의 3가지 유형
다. 매개변수(O), 반환값(X)
함수 정의 함수 호출
def 함수이름(매개변수) :
유형3 함수이름(매개변수)
명령문
def f(a, b) :
if a > b:
print(a) 형식 매개변수
else: vs
print(b) 실 매개변수
f(5, 7)
7
2학기 정 보
2. 함수의 3가지 유형
라. 매개변수(O), 반환값(O)
함수 정의 함수 호출
def 함수이름(매개변수) :
유형4 명령문 변수 = 함수이름(매개변수)
return 반환값
def f(a, b) :
if a > b : def f(a, b) :
return a - b return a-b if a > b else b-a
else :
return b - a print(f(5, 7))
print(f(5, 7))
8
2학기 정 보
3. 함수와 변수
1) 함수 내에서 변수 값 변경 없이 참조만 할 경우
① 함수 내에서 선언된 변수일 때 ② 함수 내에서 선언되지 않은 변수
지역변수를 참조 일 때 전역변수를 참조
a = 100
a = 100
def f() :
def f() :
a = 50
print("in:", a)
print("in:", a)
f()
f()
print("out:", a)
print("out:", a)
9
2학기 정 보
3. 함수와 변수
2) 함수 내에서 전역변수와 같은 이름의 변수 값이 변경되면
➔ 함수 내에 있는 해당 변수(전역변수와 같은 이름의)는 지역변수가 됨
➔ 함수 내에서 전역변수 값을 변경하려면 global 명령어 사용
함수 내에서 선언된 변수 함수 내 선언되지 않은 변수 global 명령어로 전역변수 변경
a = 100 a = 100
a = 100
def f(a) : def f() :
def f() :
print("in-1:", a) global a
a + = 10
a + = 10 a + = 10
print("in:", a)
print(“in-2:", a) print("in:", a)
f()
f(30) f()
print("out:", a)
print("out:", a) print("out:", a)
in-1: 30
# 함수 내에서 참조할 지역 in: 110
in-2: 40
변수 a 가 없어서 오류 발생 out: 110
out: 100
10
2학기 정 보
◈ 코드업 문제해결 ◈
– 함수 –
1567, 1568, 1564, 1558, 1620
11