1. sum()
- iterable 객체를 매개변수로 받아 그 원소들의 합을 구함
result = sum([1, 2, 3, 4, 5]) #15
2. min(), max()
- 파라미터로 받은 요소들 중 최소, 최대값을 구함.
result = min(1, 2, 3, 4) # 1
result = max(1, 2, 3, 4) # 4
3. eval()
- 수식이 문자열 형식으로 들어왔을 때, 해당 수식을 계산
result = eval("(3+5) * 7") # 56
4. sorted()
- iterable 객체, 정렬 기준을 매개변수로 받아 정렬
- 정렬 기준을 제시하지 않으면 기본적으로 오름차순 정렬
# 오름차순 정렬(default)
result = sorted([2, 1, 5, 9, 3]) # [1, 2, 3, 5, 9]
# 내림차순 정렬
result = sorted([2, 1, 5, 9, 3], reverse=True) # [9, 5, 3, 2, 1]
# 정렬 기준 설정하기 - 정렬할 원소에 대한 함수 정의 필요
# lambda 함수를 이용하여 정렬 기준 지정
data = [('홍길동', 35), ('이순신', 75), ('아무개', 50)]
result = sorted(data, key = lambda x : x[1], reverse = True)
# [('이순신', 75), ('아무개', 50), ('홍길동', 35)]
# 다중 조건 정렬하기
# x[1] 값 기준으로 오름차순 정렬, x[1] 값이 같으면 x[0] 값 기준으로 내림차순 정렬
data = [(91, 35), (11, 50), (63, 50)]
result = sorted(data, key = lambda x : (x[1], -x[0]))
# [(91, 35), (63, 50), (11, 50)]
5. join()
- '구분자'.join(iterable 객체) 형태로 사용
- 매개변수로 받은 iterable 객체의 원소들을 구분자로 구분하여 합쳐서 문자열로 만들어주는 함수
str = '_'.join('string') # s_t_r_i_n_g
# 구분자를 아무것도 지정하지 않으면 그냥 합쳐줌
str = ''.join(['a', 'b', 'c']) # abc
6. reversed()
- iterable 객체를 매개변수로 받아 그것을 거꾸로 뒤집은 결과를 반환하는 함수
- 반환 타입은 'reversed class' 타입이므로 join 함수를 이용해 문자열로 바꾸어 활용한다.
str = 'kael'
result = reversed(str)
type(result) # <class 'reversed'>
# 문자열로 변경하기 위해 join 함수 사용
reversed_str = ''.join(result) # leak
7. 기본 내장 함수 사용 시 주의할 점
- 앞서 기본 내장 함수의 이름을 변수명으로 사용했거나 새로 정의한 함수의 이름으로 사용했다면, 해당 키워드에 대한 정의가 변경되므로 해당 파일 내에서는 더 이상 기본 내장 함수의 기능을 사용할 수 없게 됨에 주의한다.
sum = 0
sum([1, 2, 3, 4, 5])
# TypeError: 'int' object is not callable
'sum'을 변수명으로 사용하고 0으로 초기화 했으므로
기존의 내장 함수 기능은 사라졌다.
def sum(a, b):
return a * b
# result = sum([1, 2, 3, 4, 5])
# TypeError: sum() missing 1 required positional argument: 'b'
result = sum(3, 5) # 15
새로운 정의에 따르면
이제 sum 함수는 두 개의 매개 변수를 요구하므로
기존의 방식대로 사용할 수 없으며,
결과도 정의된 대로 곱셈 결과를 반환하고 있음을 알 수 있다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
[Python] 파이썬의 반복문 (0) | 2023.11.02 |
---|---|
[Python] 파이썬 입출력 (0) | 2023.11.01 |
[Python] 파이썬 사전 자료형 정리 (0) | 2023.10.20 |
[Python] 파이썬에서의 수의 계산 (0) | 2023.10.20 |
[Python] 파이썬 리스트 자료형 정리 (1) | 2023.10.19 |
댓글