Function

2022. 3. 18. 09:25Python

Function이란?

  • 하나의 기능을 나타냄
  • 특정 기능을 구현한 코드 묶음
  • 함수를 사용하는 가장 중요한 이유는 재사용상 때문
def 함수이름(param1, param2, ... ):
  <statement1>
  <statement2>
return

전역변수, 글로벌변수

  • 함수 밖에서 정의가 되었어도 함수 내부에서 자유롭게 호출해서 사용이 가능 
age = 28
age

# 함수정의
def person_nm(name,mail) :
    print(f'제 이름은 {name},{age},{mail}입니다.')
# 함수실행 코드
def person_nm('Eddy','mail23@gmail.com')

 

지역변수, 로컬변수

  • 함수 내부에서 정의 된 age 변수는 함수 내부에서만 정의되는 변수로서 함수 밖에서는 호출할 수 없음
  • 그렇기에 다른 함수에서 같은 이름의 변수를 사용해도 관계없음
  • 함수 밖에서 호출이 불가
  • 함수 연산 결과로서 결과값을 빼기 위해서는 반드시 return구문으로 반환값을 사용해줘야 함

 

Python Function Definition

  • keyword parameter : parameter에 기본 디폴트 값 지정 
  • 함수에서 사용되는 변수들에게는 효력 범위(range)와 수명(lifetime)이 있음

Lambda 함수

  • inline function : 굉장히 간단한 함수가 있는 경우에 한 줄짜리 함수로 간편하게 사용
  • lambda 함수와 반복문을 통해 함수의 정의 없이 다양한 프로그래밍이 가능함
def add(a, b):
    return a+b

# lambda 함수로 바꾸면?
f = lamda a, b ; a+b 
# a,b는 input parameter a+b는 return되는 output parameter
strings = ['yoon', 'kim', 'jessica', 'jeong']
#strings.sort() #사전순 정렬
strings.sort(key=lambda s:len(s))
strings

파이썬에 이미 정의되어 있는 함수들을 사용해보자!

# 수학 계산을 해봅시다.
import math
# 절대값, 올림, 내림
print(abs(-3))
print(math.ceil(3.5))
print(math.floor(3.5))
# sin, cos
print(math.sin(1))
print(math.cos(1))
# 복권 숫자를 만들어봅시다.
import random
random.sample(range(1,46),7)

# 다양한 사전들을 써봅시다.
from collections import defaultdict
from collections import OrderedDict

D = defaultdict(int)
D2 = OrderedDict()
D2['z'] = 26
D2['a'] = 1
D2['c'] = 3
D2['d'] = 5
D2['j'] = 14
D2['b'] = 2
D2

'Python' 카테고리의 다른 글

Pandas  (0) 2022.03.18
Numpy  (0) 2022.03.18
인덱싱  (0) 2022.03.18
데이터 정렬  (0) 2022.03.18
pivot_table, groupby  (0) 2022.03.18