[Python] 나도코딩 기본편 - (4)

Updated:

유튜브 나도코딩 무료 강의를 통해 학습한 내용을 정리해서 올리고 있습니다.

실습과정에서 필요에 따라 일부 강의 내용의 누락 및 추가, 수정사항이 있습니다.

퀴즈의 경우, 유튜브 풀이와 상이할 수 있습니다.


함수 생성

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

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

변수 입력 함수 생성

# 입금 함수
def deposit(balance, money):
    print(f"입금이 완료되었습니다. 잔액은 {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

# 1000원 입금
balance = deposit(balance, 1000) 

# 2000원 출금
balance = withdraw(balance,2000)

# 500원 출금 (저녁)
commission, balance = withdraw_night(balance, 500)
print(commission, balance)
입금이 완료되었습니다. 잔액은 1000원 입니다.
출금 실패. 잔액 1000원
100 400

함수 키워드 설정

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

profile(name = "유재석", main_lang = "SAS", age = 20)
유재석 20 SAS

함수 기본값 설정

def profile(name, age = 17, main_lang = "파이썬"):
    print("이름: {0}\t나이: {1}\t주 사용언어: {2}"\
        .format(name, age, main_lang))

profile("유재석")
profile("유재석", 20, "R")
이름: 유재석	나이: 17	주 사용언어: 파이썬
이름: 유재석	나이: 20	주 사용언어: R

함수 가변인자 설정

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, "a", "b", "c", "d", "e")
profile("유재석", 20, "a", "b")
이름: 유재석	나이: 20	 a b c d e 
이름: 유재석	나이: 20	 a b 

지역변수(로컬), 전역변수(글로벌)

gun = 10

def checkpoint(soldiers):
    global gun # 전역 변수를 이 함수에서 사용
    print("전체 총: {0}".format(gun))
    gun = gun - soldiers
    print("[함수 내] 남은 총 : {0}".format(gun))

checkpoint(2)

def checkpoint_ret(gun, soldiers):
    print("전체 총: {0}".format(gun))
    gun = gun - soldiers
    print("[함수 내] 남은 총 : {0}".format(gun))
    # return gun

checkpoint_ret(10,8)
전체 총: 10
[함수 내] 남은 총 : 8
전체 총: 10
[함수 내] 남은 총 : 2

Quiz 6

표준 체중 구하는 프로그램 작성

성별에 따른 공식

남자: 키(m) x 키(m) x 22

여자: 키(m) x 키(m) x 21

  • 조건1: 표준 체중은 별도의 함수내에서 계산 / std_weight(height, gender)
  • 조건2: 표준 체중은 소수점 둘째자리까지 표시

(출력 예제)

키 175cm 남자의 표준 체중은 67.38kg 입니다.

def std_weight(height, gender):
    if gender == "남자":
        weight = pow(height/100,2) * 22
    elif gender == "여자":
        weight = pow(height/100,2) * 21
    print(f"키 {height}cm {gender}의 표준 체중은 {round(weight,2)}kg 입니다.")
    
std_weight(175,"남자")
std_weight(160,"여자")
키 175cm 남자의 표준 체중은 67.38kg 입니다.
키 160cm 여자의 표준 체중은 53.76kg 입니다.

Leave a comment