함수는 프로그래밍시 똑같은 내용의 반복 작성을 막고 프로그램의 흐름을 파악하기 쉽게 한다.
파이썬 함수에는 4가지 종류가 있다.
파이썬 함수의 종류
1. 일반적인 함수
#형태
def add(a,b):
return a+b
#사용
a = add(3,4)
print(a)
2. 입력값이 없는 함수
#형태
def cat():
return "Meow"
#사용
a = cat()
print(a)
>>Meow
3. 결과값이 없는 함수(return문이 없는 함수)
#형태
def add(a,b):
print("%d와 %d의 합은 %d입니다."%(a,b,a+b))
#사용
add(3,4)
>> 3과 4의 합은 7입니다.
print(a)
>>None
4. 입력값, 결과값 둘다 없는 함수
#형태
def cat():
print("Meow")
#사용
cat()
매개변수
def add_div(choice, *args):
if choice == "add":
result = 0
for i in args:
result += i
elif choice == "div":
result = 1
for i in args:
result *= i
return result
*매개변수 형태는 정해지지 않은 여러개의 매개변수를 입력할 수 있다.
이 형태는 튜플로 저장된다.
**매개변수 형태는 딕셔너리로 저장된다.
def kward_argument(**kwargs):
print(kwargs)
print kward_argument(a=1)
>>{'a',1}
함수의 결과값은 항상 하나이다.
def add(a,b):
return a+b, a*b
result = add(3,4)
>>result = (7,12) #튜플 형태인 하나의 값으로 제공
result1, result2 = add(3,4)
>> result1 = 7, result2 = 12
자주 사용되는 return 활용법
# name값으로 "나"가 들어오면 print문을 실행하지 않고 함수 종료
def my_name(name):
if name == "나":
return
print("제 이름은 %s 입니다."%name)
매개변수의 초기값 설정은 매개변수들 중 맨 끝 위치에서만 가능하다.
함수 안에서 함수 밖의 변수 변경하기
1. return 문 사용
a = 1
def abc(a):
a = a+1
return a
a = abc(3)
print(a)
>> 4
2. global 명령어 사용
함수 내부에 global a
함수는 독립적으로 존재하는 게 좋기 때문에 프로그래밍 시 사용하지 않는 것이 좋다.
lambda 함수
#lambda 매개변수:표현식
lambda a,b : a+b
'프로그래밍 > BOJ_Python 목표는 Diamond' 카테고리의 다른 글
깃헙 커밋 메시지 규칙 (0) | 2022.07.12 |
---|---|
[ Python | 백준 5622] 다이얼 (0) | 2022.06.04 |
VS code SyntaxError: invalid syntax 해결 방법 (0) | 2022.05.30 |
[파이썬 | 백준 10171] 고양이 (0) | 2022.05.10 |
파이썬 사용자 입출력: input(), print() (0) | 2022.04.10 |