728x90
함수의 개념
: 특정 작업을 수행하는 명령문의 집합
-> 특정 작업을 함수의 이름으로 대체
-> 유사한 유형의 문제를 해결할 수 있도록 고려
: 사용자 정의 함수
-> 내장 함수와 달리 사용자의 목적에 따라 정의된 함수
: 반환값에 따른 함수의 종류
-> 반환값이 없는 함수 : print
-> 반환값이 있는 함수 : input, format, int 등
반환값이 없는 함수 정의
-구문형식
def 함수이름(매개변수 리스트):
명령 블록
: 함수 이름은 식별자
: 매개변수 리스트는 0개 이상의 값을 함수 내부로 전달
: 함수 내부에서 매개변수 리스트는 변수와 동일하게 사용
예시)
#원뿔 계산 함수 정의
def prt_cone_vol(r, h) :
if r > 0 and h > 0 :
# r, h 모두 양수일 때
vol = 1/3 * 3.14 * r ** 2 * h
print("원뿔의 부피는", vol, "입니다.")
else :
# r, h가 음수일 때
print("반지름과 높이 값에 양수를 입력하세요.")
#반지름 30, 높이 50
rad = 30
hei = 50
prt_cone_vol(rad, hei)
선언한 rad, hei의 값이 2번째 라인의 prt_cone_vol의 매개변수로 들어간다.
예시2 - 숫자를 입력받아 역순으로 출력)
digits = 34567
def reverse_number(num) : #매개변수 역할의 num
while num != 0 :
digit = num % 10
num = num // 10
print(digit, end="")
reverse_number(765) #2번 줄에서 정의한 변수 num
반환값이 있는 함수
-구문형식
def 함수이름(매개변수 리스트):
명령 블록
return 반환값 리스트
: 실행 후 결과값을 남기는 함수
-> return 명령어와 반환값을 열거
-> 함수 내부에 여러 개의 return 사용 가능
1) format 함수
반환값이 있는 함수 예시)
def prt_cone_vol(r, h) :
if r > 0 and h > 0 :
# r, h 모두 양수일 때
vol = 1/3 * 3.14 * r ** 2 * h
return vol
else :
# r, h가 음수일 때
print("반지름과 높이 값에 양수를 입력하세요.")
print(format(prt_cone_vol(10, 20), ">20.3f"), "입니다.")
동시 할당
: 복수개의 변수에 값을 동시에 할당
-> 변수의 개수에 상응하는 값을 콤마(,)로 나열
교환
: 복수 개의 변수에 할당하는 값을 맞바꿈
예시)
def prt_cone_vol(r, h) :
if r > 0 and h > 0 :
# r, h 모두 양수일 때
vol = 1/3 * 3.14 * r ** 2 * h
return vol, surf #vol과 surf를 동시에 리턴
else :
# r, h가 음수일 때
print("반지름과 높이 값에 양수를 입력하세요.")
vol1, surf1 = prt_cone_vol(50, 100)
print(vol1, "입니다.")
print(surf1, "입니다.")
예시2 - 오름차순 정렬과 교환)
a = int(input("첫번째 숫자를 입력하세요: "))
b = int(input("첫번째 숫자를 입력하세요: "))
c = int(input("첫번째 숫자를 입력하세요: "))
def sort3(a, b, c) :
if a > b :
a, b = b, a
if a > c :
a, c = c, a
if b > c :
b, c = c, b
print(a, b, c)
sort3(a, b, c)
print("출력이후", a, b, c)
728x90
'방통대 > 파이썬' 카테고리의 다른 글
[파이썬] 9강. 함수 연습 문제 (0) | 2024.04.18 |
---|---|
[파이썬] 9-2 함수의 확장 (2) | 2024.04.18 |
[파이썬] 8강. 체크포인트 연습 문제 (0) | 2024.04.11 |
[파이썬] 8강. 체크포인트 (2) | 2024.04.11 |
7강. 파이썬 - 반복 구조 연습 문제 (0) | 2024.04.05 |