1. 함수 정의
- 함수의 기본구조 def 함수명(매개변수): 형태로 함수를 정의한다.
def cal(num1,num2):
return num1+num2
print(cal(1,2)) --> 화면에 3이 출력된다. (num1 = 1, num2 =2)
- 매개변수는 위치로 값을 넘겨 줄 수 있으며 초기값을 할당 할 수 도 있다.
def cal(num1,num2=4):
return num1+num2
print(cal(1)) --> 화면에 5가 출력된다 (num1 =1, num2 =4)
print(cal(1,2)) --> 화면에 3이 출력된다.
- 매개변수를 키워드로 매칭 할 수 도 있다.
def cal(num1, num2=4):
return num1 + num2
print(cal(num1=1,num2=2)) --> 화면에 3이 출력된다.
- 매개변수의 갯수를 정하지 않을 수 도 있다. (튜플형 : 매개변수 앞 * 입력, 딕셔너리형 : 매개변수 앞 ** 입력)
def cal(*nums):
result = 0
for num in nums:
result += num
return result
print(cal(1,2,3,4,5)) --> 15
2. 람다 함수
- 1회용 함수(이름을 지을 필요가 없음)
- lambda 매개변수 : 코드 형태로 작성한다.
lambda num1, num2 : num1+num2
print((lambda num1, num2 : num1+num2)(2,3)) --> 5 출력
3. map 함수
- map(함수, 순서가 존재하는 자료형)
- 입력한 자료형을 순서대로 입력 받은 함수 처리하고 결과를 map 형태로 반환한다.
nums = [1,2,3,4,5]
print(list(map(lambda num: num + 1, nums))) --> 2,3,4,5,6
4. filter 함수
- filter(함수, 순서가 존재하는 자료형)
- 입력한 자료형을 순서대로 함수에 넣어 조건을 만족하는지 확인한 후, 조건을 만족하는 값만 반환한다.
print(list(filter(lambda num:num<=3,[1, 2, 3, 4, 5]))) --> 1,2,3
'Python > Language' 카테고리의 다른 글
[Python] 멀티 스레드 (0) | 2023.08.17 |
---|---|
[python] 정규표현식(Regex) (0) | 2023.08.17 |
[python] 메모리 할당과 복사 (0) | 2023.08.10 |
[Python] 예외처리 (0) | 2023.08.04 |
[Python] 모듈 (0) | 2023.08.03 |