본문 바로가기

Python

[Python/파이썬] 함수 | def, 전역변수&지역변수, 기본값&키워드인자, 가변인자

반응형

 

 

 

 

토글

 

 

 

 

1. 함수 작성 및 호출

파이썬에서 함수를 작성하려면 def 키워드를 사용하고, 함수를 호출하려면 함수 이름과 괄호를 사용한다.

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

open_account()

 

 


 

2. 전역변수와 지역변수

전역변수는 함수 외부에서 선언된 변수로, 프로그램 전체에서 접근 가능하다.

지역변수는 함수 내부에서 선언되고 사용되며, 함수 외부에서는 접근할 수 없다.

함수 내부에서 전역변수를 사용하려면 global 키워드를 사용해야 한다.

 

예시: 계좌 잔액 관리

# 전역변수
balance = 15000

def withdraw_night(balance, money):
    commission = 100
    return commission, balance - money - commission

commission, balance = withdraw_night(balance, 10000)
print("수수료는 {0}원이며, 잔액은 {1}원입니다.".format(commission, balance))

# 지역변수 예시
def checkpoint(soldiers):
    global gun
    gun = gun - soldiers
    print("[함수 내] 남은 총 : {0}".format(gun))

 

 


 

3. 기본값 및 키워드 인자

함수의 매개변수에 기본값을 지정할 수 있다.

기본값이 지정된 매개변수는 함수 호출 시 값을 전달하지 않아도 기본값을 사용한다.

매개변수의 이름을 직접 명시하여 값을 전달하는 것을 키워드 인자라고 한다.

반응형

예시: 프로필 출력

def profile(name, age=19, 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=23)   # 카리나 23 한국어
profile(age=22, name="닝닝", main_lang="중국어")   # 닝닝 22 중국어

 

 


 

4. 가변인자 (*args)

함수에 서로 다른 개수의 인자를 전달해야 하는 경우, 가변인자를 사용하면 편리하다.

*args를 사용하여 함수 정의를 할 경우, 여러 개의 인자를 튜플 형태로 받을 수 있다.

 

예시: 여러 언어 출력 

def profile(name, age, *language):
    print("이름: {0}\t나이: {1}\t".format(name, age), end="")
    for lang in language:
        print(lang, end="")

profile("SM", 00, "엑소", "샤이니", "소녀시대", "레드벨벳", "엔시티")
profile("YG", 10, "빅뱅", "투애니원")

 

 

 

 

반응형