JAMONGPROJECT
[DAY7] 함수 작성 실습 본문
함수 작성 실습
1. 거스름돈 반환 함수
def calculate_change(payment, cost):
money = payment - cost
unit = [50000,10000,5000,1000]
for i in range(len(unit)):
print('{}원 지폐 : {}장'.format(unit[i],money//unit[i]))
money = money % unit[i]
calculate_change(100000, 33000) # 함수 호출
print('=================')
calculate_change(500000, 378000)
50000원 지폐 : 1장
10000원 지폐 : 1장
5000원 지폐 : 1장
1000원 지폐 : 2장
=================
50000원 지폐 : 2장
10000원 지폐 : 2장
5000원 지폐 : 0장
1000원 지폐 : 2장
2. 절댓값 반환 함수
def abs(num):
# return만나면 함수가 종료됨
if num > 0:
result = num
else:
result = num * -1
return result
print(abs(-7))
print(abs(12))
7
12
3. 두수를 받아서 사칙연산결과를 출력
def cal(num1, num2):
print("{} + {} = {}".format(num1,num2,num1+num2))
print("{} - {} = {}".format(num1, num2, num1 - num2))
print("{} * {} = {}".format(num1, num2, num1 * num2))
print("{} / {} = {}".format(num1,num2,num1/num2))
cal(12, 3)
12 + 3 = 15
12 - 3 = 9
12 * 3 = 36
12 / 3 = 4.0
4. 초기값 함수
x = 20; y = 10
k = [1,2,3]
# call함수에서 x,y를 받아서 x+=y를 실행한후에
# 함수 안에서 x, y출력, 함수 밖에서 x,y출력하고 비교
# k에 4를 추가하고 함수 안과 밖에서 출력
def call(x, y, k):
x += y
k.append(4)
print('x =',x,', y =',y)
print(k)
call(x,y,k)
print('x =',x,', y =',y)
print(k)
x = 30 , y = 10
[1, 2, 3, 4]
x = 20 , y = 10
[1, 2, 3, 4]
5. *매개변수 함수
# *는 복수의 데이터를 가진 변수
a, *b = [1,2,3,4,5]
print(a)
print(b)
*a,b = [1,2,3,4,5]
print(a)
print(b)
a,*b,c = [1,2,3,4,5]
print(a)
print(b)
print(c)
# a,*b,*c = [1,2,3,4,5] b와 c에 몇개씩인지 구별못함
1
[2, 3, 4, 5]
[1, 2, 3, 4]
5
1
[2, 3, 4]
5
6. 지역변수, 전역변수
def f1(x):
# 지역변수
# 함수실행함 때 메모리에 생성
# 함수가 끝나면 없어짐
x = 7
print('x =',x)
# 전역변수
x = 2
f1(x)
print('x =',x)
x = 7
x = 2
7. 지역변수, 전역변수 2
def f1(a):
global x # x가 전역변수
x = a
x = 7
print('x =',x)
# 전역변수
x = 2
f1(x)
print('x =',x)
x = 7
x = 7
8. **매개변수 함수
# *변수 : 값이 여러개
# **변수 : '키=값'형태가 여러개
def f(height, weight,**k):
print('키 :',height)
print('몸무게 :',weight)
print(k)
f(height=182,weight=89, age=27, name='강다니엘')
키 : 182
몸무게 : 89
{'age': 27, 'name': '강다니엘'}
9. print, return 예제
def sum(a, b):
return a + b
def print_sum(a, b):
print(a + b)
sum(2, 4) # 이자리에 6이 들어 가지만 출력은 하지 않음
print(sum(2, 4)) # 6을 출력
print_sum(2, 4) # 6을 출력
print(print_sum(2, 4)) # 6을 출력하고 None을 출력
# return이 없을 경우는 받는 값이 없으므로 None
6
6
6
None
10. return 이후 작성 함수
def calculate_seven():
return int("5") + int(2.0) # 5+2 = 7
print("럭키 7을출력합니다.") # 실행 안됨
num = calculate_seven()
print(num)
7
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
#패스트캠퍼스 #패캠챌린지 #수강료0원챌린지 #환급챌린지 #직장인인강 #직장인자기계발
#패캠인강후기 #패스트캠퍼스후기 #오공완
#한번에끝내는컴퓨터공학전공필수&인공지능심화초격차패키지Online
'Challenge > FASTCAMPUS 30일 챌린지' 카테고리의 다른 글
[DAY9] 함수 심화학습 (0) | 2023.02.28 |
---|---|
[DAY8] 함수 심화학습 (0) | 2023.02.27 |
[DAY6] 함수 및 변수 (1) | 2023.02.25 |
[DAY5] 실전문제 풀이 (0) | 2023.02.24 |
[DAY4] 제어문 (0) | 2023.02.23 |