# # 전달값과 반환값
# def open_account():
# print("새로운 계좌가 생성되었습니다.")
# 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)
# commission, balance = withdraw_night(balance, 500)
# print("수수료는 {0}원이며, 잔액은 {1}원입니다".format(commission, balance))
# 기본값
def profile(name, age, main_lang):
print("이름: {0}\t나이: {1}\t주사용언어: {2}" \
.format(name, age, main_lang))
profile("유재석", 20, "파이썬")
profile("김태호", 25, "자바")
# 같은 학년, 같은 반, 같은 사용언어일 경우
def profile(name = "김철수", age = 17, main_lang = "파이썬"):
print("이름: {0}\t나이: {1}\t주사용언어: {2}" \
.format(name, age, main_lang))
profile("유재석")
profile("김태호")
# 키워드값
def profile(name, age, main_lang):
print(name, age, main_lang)
profile(name = "유재석", main_lang = "파이썬", age = 20)
profile(main_lang = "자바", age = 25, name = "김태호")
# 가변 인자
# def profile(name, age, lang1, lang2, lang3, lang4, lang5):
# print("이름 : {0}\t나이 : {1}\t".format(name, age), end = " ") # end 값을 정해주면 print가 끝난 다음 줄을 바꾸지 않고 ""안에 있는 값이 출력되고 이어서 써짐
# print(lang1, lang2, lang3, lang4, lang5)
# profile("유재석", 20, "Python", "Java", "C", "C++", "C#")
# profile("김태호", 25, "Kotlin", "Swift","","","")
def profile(name, age, *language):
print("이름 : {0}\t나이 : {1}\t".format(name, age), end = " ") # end 값을 정해주면 print가 끝난 다음 줄을 바꾸지 않고 ""안에 있는 값이 출력되고 이어서 써짐
for lang in language:
print(lang, end = " ")
print()
profile("유재석", 20, "Python", "Java", "C", "C++", "C#")
profile("김태호", 25, "Kotlin", "Swift","","","")
# 지역변수와 전역변수
gun = 10
# def checkpoint(soldiers): # 군인들이 지역근무를 한다면
# gun = gun - soldiers
# print("[함수 내] 남은 총 : {0}".format(gun))
# print("전체 총 : {0}".format(gun))
# checkpoint(2) # 2명이 경계근무를 나감
# print("남은 총 : {0}".format(gun)) # 이 상태로는 호출이 안 됨
# def checkpoint(soldiers): # 군인들이 지역근무를 한다면
# global gun # 전역 공간에 이미 설정된 gun 사용, 복잡해지므로 일반적으로 사용되지 않는 방법
# gun = gun - soldiers
# print("[함수 내] 남은 총 : {0}".format(gun))
# print("전체 총 : {0}".format(gun))
# checkpoint(2) # 2명이 경계근무를 나감
# print("남은 총 : {0}".format(gun))
def checkpoint_ret(gun, soldiers):
gun = gun - soldiers
print("[함수 내] 남은 총 : {0}".format(gun))
return gun
print("전체 총 : {0}".format(gun))
gun = checkpoint_ret(gun, 2) # 2명이 경계근무를 나감
print("남은 총 : {0}".format(gun))
'파이썬 공부중 > 파이썬 기초' 카테고리의 다른 글
| Python 기초 #9. 표준입출력, 파일입출력, Pickle, with, 연습문제 (0) | 2023.03.08 |
|---|---|
| Python 기초 #8. 연습문제 (2) | 2023.03.08 |
| Python 기초 #6 continue와 break, 연습문제 (0) | 2023.03.07 |
| Python 기초 #5 if문, for문, while문 (1) | 2023.03.07 |
| Python 기초 #4-1 연습문제(리스트, 튜플, 집합, 자료구조의 확인과 변경) (1) | 2023.03.07 |