-
[Python Programming 기초] # 함수의 이해 및 사용 1 : defProgramming Language/Python 2020. 11. 18. 00:30
# 함수의 이해 및 사용
1. def : 함수 정의
ex) def add(x, y): # x, y 각각을 인자(parameter)라고 한다.
n = x + y
return n
- 기본 인자 : parameter의 기본값 지정 가능
ex) def add(x, y, z=5):
a = x + y +z
return a
add(10, 20)
=> 35
cf) 기본 파라미터는 뒤의 파라미터부터 정의되어야 함
def test(a, b=3, c):
print(a, b, c)
test(10, 20, 1)
=> Error
- return : 함수의 "종료" 명시 (함수 내에서 return 뒤에 명시된 코드는 수행되지 않음!)
값이 있으면 그 값을 반환
'return만 존재' 혹은 'return이 없는 경우', None 반환
→ 함수로직이 전부 끝났을 때
- multiple return
: tuple 반환으로 여러 개 값 return 가능
ex) def add_mul(x, y):
s = x + y
m = x * y
return s, m
a = add_mul(20, 3)
print(a)
=> (23, 60)
- 변수의 범위
지역변수(local) : 특정 코드 블록에서 선언된 변수(함수 내 변수는 자신이 속한 코드블록이 종료되면 소멸됨)
전역변수(global) : 가장 상단에 정의되어 프로그램 종료 전까지 유지되는 변수
ex) num1 = 10
num2 = 30
def test(num1, num2):
print(num1, num2)
return num1 + num2
test(30, 40)
print(num1, num2)
=> 30 40
10 30
- 가변길이 인자 : 전달되는 파라미터(parameter)의 개수가 고정적이지 않은 경우 사용 → print(), format()이 대표적
(1) *args : 튜플 형태로 파라미터를 전달
(2) **kwargs : 딕셔너리 형태로 파라미터를 전달
ex) def test(*args):
for item in args:
print(item)
test(10, 30, 40, 50)
=> 10
30
40
50
ex) def test2(**kwargs):
for key, value in kwargs.items():
print('key :', key, ', value :', value)
test2(a=1, b=2)
=> key : a, value : 1
key : b, value : 2
본 포스팅은 Fast Campus 머신러닝과 데이터 분석 A-Z 강의를
듣고 정리한 내용을 담고 있습니다.
'Programming Language > Python' 카테고리의 다른 글
[Python Programming 기초] # 모듈의 이해 및 사용 (0) 2020.11.18 [Python Programming 기초] # 함수의 이해 및 사용 2 : lambda 함수 (0) 2020.11.18 [Python Programming 기초] # 조건문과 반복문 3 : for (0) 2020.11.18 [Python Programming 기초] # 조건문과 반복문 2 : while (0) 2020.11.18 [Python Programming 기초] # 조건문과 반복문 1 : if (0) 2020.11.18