6. 함수

2023. 5. 3. 12:22python

def open_account():
	print("새로운 계좌가 생성되었습니다.")

open_account()

'''
새로운 계좌가 생성되었습니다.
'''

def deposit(balance, money):
	print("입금이 완료되었습니다. 잔액은 {0} 원입니다.".format(balance + money))
	return balance + money

def withdraw(balance, money): # 출금
	if balance >= money: # 잔액이 출금보다 많으면
		print("출금이 완료되었습니다. 잔액은 {0} 원입니다.".format(balance - money))
		return balance - money
	else:
		print("출금이 완료되지 않았습니다. 잔액은 {0} 원입니다.".format(balance))
		return balance

def withdraw_night(balance, money): # 저녁에 출금
	commission = 100 # 수수료 100원
	return commission , balance - money - commission

balance = 0 # 잔액
balance = deposit(balance, 1000)
balance = withdraw(balance, 2000)
balance = withdraw(balance, 500)
commission, balance = withdraw_night(balance, 300)
print("수수료 {0} 원이며, 잔액은 {1} 원입니다.".format(commision, balance))


'''
입금이 완료되었습니다. 잔액은 1000 원입니다.
출금이 완료되지 않았습니다. 잔액은 1000 원입니다.
출금이 완료되었습니다. 잔액은 500 원입니다.
수수료 100 원이며, 잔액은 100 원 입니다.
'''

기본값

def profile(name, age, main_lang):
	# 역슬레시를 사용하면 하나의 문장으로 처리된다.
	print("이름 : {0}\t나이 : {1}\t주 사용 언어 : {2}"\
			.format(name, age, main_lang))

profile("유재석", 20, "파이썬")
profile("김태호", 25, "자바")


'''
이름 : 유재석 나이 : 20       주 사용 언어 : 파이썬
이름 : 김태호 나이 : 25       주 사용 언어 : 자바
'''

키워드값

def profile(name, age, main_lang):
	print(name, age, main_lang)

profile(name="유재석", main_lang="파이썬", age=20)
profile(main_lang="자바", age=25, name="김태호")

'''
유재석 20 파이썬
김태호 25 자바
'''

가변인자

def profile(name, age, lang1, lang2, lang3, lang4, lang5):
	#  end=" " 는 줄바꿈을 하지 않는다.
	print("이름 : {0}\t 나이 : {1}\t".format(name, age), end=" ")
	print(lang1, lang2, lang3, lang4, lang5)

profile("유재석", 20, "python", "Java", "C", "C++", "C#")
profile("김태호", 25, "Kotlin", "Swift", "", "", "")

'''
이름 : 유재석  나이 : 20       python Java C C++ C#
이름 : 김태호  나이 : 25       Kotlin Swift
'''

'python' 카테고리의 다른 글

6. 퀴즈 #6  (0) 2023.05.03
6. 지역변수와 전역변수  (0) 2023.05.03
5. 퀴즈 #5  (0) 2023.05.02
5. 한줄 for  (0) 2023.05.02
5. continue 와 break  (0) 2023.05.02