공부하는게 취미인 사람들 투딩
함수란 : 어떤 역할을 하는 박스
5 → [ □ + 20 ] → 25
3 → [ □ + 20 ] → 23
* 파이썬 함수정의 방법
def 함수명():
실행내용
코드
def open_account():
print("새로운 계좌가 생성되었습니다.")
# 함수는 호출되기 전까지는 아무 일도 발생하지 않는다.
# 함수명을 호출할때 비로소 어떤 일이 일어남
코드
open_account()
결과값
새로운 계좌가 생성되었습니다.
* 리턴 있는 함수 : 값을 보내고 결과 값을 받아온다.
코드
# 함수정의
def deposit(balance, money):
return balance+money ①
#함수호출
balance = 0
balance = deposit(balance,1000) ②
print("입금이 완료되었습니다. 잔액은 {0} 원입니다.".format(balance2)) ③
① 잔액과 입금액을 더해서 반환시킨다
② deposit 함수를 호출할 때 잔액과 입금액을 보내고, 리턴받은 값을 balance에 넣는다.(0이 1000으로 바뀜)
③ 결과를 프린트 한다. 함수정의 하는 부분에 써도 되지만 호출하는 쪽에서 꾸며준다.
함수는 재사용을 위한 것이므로 가급적 공통된 사항을 코딩 하는것이 좋다.
* 여러개의 결과 값을 리턴 받을 경우
코드
#함수정의
def withdraw_night(balance,money) :
commission = 100 ①
return commission, balance - money - commission ②
#함수호출
balance = 0 ③
balance = deposit(balance,1000) ③
commission , balance = withdraw_night(balance,500) ④
print("수수료{0}원이며, 잔액은{1} 원 입니다.".format(commission,balance))
#결과
수수료100원이며, 잔액은 400원 입니다.
① 수수료
② 여러개의 값을 한번에 리턴시킬 수 있다. 콤마(,)로 리턴 값 구분한다. 뒷부분은 괄호로 묶어도 실행된다.
③ 위 의 예제에서 실행해 둔 것이 있다면 생략해도 된다. 언어는 위에서 부터 아래로 읽는다! 같은 변수명이 있다면 덮어쓰고 함수를 재 호출 했다면 마지막에 호출 한 내용으로 값이 들어가져 있다.
④ 두개 값을 보냈으니 두개의 값으로 반환 받는다.
만약 deposit 함수에 print 문이 포함되어 있다면 위코드에 프린트 문이 없다고 하더라도
"입금이 완료되었습니다. 잔액은 1000원입니다." 값이 찍힌다. 이것이 함수의 힘!
* 함수의 기본값 설정
코드
def profile(name,age=17,main_lang="파이썬"): ①
print("이름:{0} \t 나이:{1} \t 주 사용 언어 :{2}".format(name,age,main_lang))profile("유재석") ②
profile("김태호")
#결과
이름:유재석 나이:17 주 사용 언어 :파이썬 ③
이름:김태호 나이:17 주 사용 언어 :파이썬
① 값을 아예 지정해 둔다
② 인자값으로 넘기지 않아도
③ 알아서 출력된다.
* 함수의 키워드값 설정
코드
def profile(name,age,main_lang): ①
print(name,age,main_lang)
profile("유재석",20,"파이썬") ②
profile(name="유재석",main_lang="파이썬",age=25) ③
profile(main_lang="C#",age=20,name="김태호")
#결과
유재석 20 파이썬
유재석 25 파이썬
김태호 20 C#
① 함수호출시 기본은 ② 처럼 인자값의 순서를 맞춰줘야 한다.
② 키워드값을 넣으면 함수 호출 순서가 뒤 바뀌어도 제대로 출력된다.
③ 순서가 뒤 바뀌어도 키워드 값에 값을 할당해서 넘기면 결과 값이 같게 출력된다.
블로그에는 우클릭 방지가 걸려있어요. 코드복사는 카페에서 가능 합니다.
중간중간 제 생각이 첨삭된 부분이 있습니다. 실제 강의는 선생님걸로 들으세요~
파이썬 기초는 나도코딩님이 인프런사이트에서 강의한 내용을 바탕으로 공부한 내용을 정리한 것 입니다.
추천 : ★★★★★
목소리 :
딕션 :
속도 :
내용 :
결과물 :
'코딩(개발) > 파이썬' 카테고리의 다른 글
파이썬 함수 문제 풀기 (0) | 2020.12.20 |
---|---|
파이썬 가변 인자 / 글로벌 변수 (0) | 2020.12.19 |
파이썬 반복문(for / while) (0) | 2020.12.18 |
파이썬 if문 (0) | 2020.12.18 |
파이썬 주석 파이썬 변수 (0) | 2020.12.17 |
댓글