-
파이썬 코딩테스트에서 유용한 함수 정리Programming/코딩공부 2023. 6. 12. 19:57
파이썬 코딩테스트에서 유용한 함수들은 다양한 상황과 문제 유형에 따라 다를 수 있지만, 일반적으로 다음과 같은 함수들이 자주 활용됩니다:
1. 내장 함수 (Built-in Functions):
- `len()`: 컨테이너(리스트, 튜플, 문자열 등)의 길이를 반환합니다.
- `sorted()`: 리스트나 이터러블 객체를 정렬한 결과를 반환합니다.🟡 sorted()와 sort()의 차이
더보기`sorted()`와 `sort()`는 둘 다 리스트를 정렬하는 함수입니다. 그러나 사용 방법과 동작 방식에 차이가 있습니다.
- `sorted()`: `sorted()`는 원본 리스트를 변경하지 않고 새로운 정렬된 리스트를 반환합니다. 따라서 원본 리스트는 그대로 유지됩니다. `sorted()` 함수는 전달된 리스트를 정렬하여 새로운 리스트를 반환하는 것이 특징입니다. 예를 들어, `sorted_list = sorted(original_list)`와 같이 사용하면 `sorted_list`에는 정렬된 결과가 저장되고, `original_list`는 변경되지 않습니다.
- `sort()`: `sort()`는 원본 리스트를 정렬하여 변경합니다. 따라서 원본 리스트가 정렬된 상태로 변경됩니다. `sort()` 함수는 리스트 내부에서 정렬을 수행하는 것이 특징입니다. 예를 들어, `original_list.sort()`와 같이 사용하면 `original_list`가 정렬된 상태로 변경됩니다.
간단히 말하면, `sorted()`는 정렬된 새로운 리스트를 반환하고 원본 리스트는 그대로 유지되며, `sort()`는 원본 리스트를 직접 정렬하여 변경합니다. 따라서 사용 목적에 따라 적절한 함수를 선택하여 사용해야 합니다.- `max()`, `min()`: 리스트나 이터러블 객체에서 최댓값과 최솟값을 반환합니다.
- `sum()`: 리스트나 이터러블 객체의 항목들의 합을 반환합니다.
- `enumerate()`: 이터러블 객체의 인덱스와 값을 함께 반환하는 이터레이터를 생성합니다.
- `range()`: 지정한 범위의 연속된 정수를 생성하는 이터레이터를 반환합니다.
- `zip()`: 여러 개의 이터러블 객체를 병렬로 묶어 튜플로 반환합니다.
2. 리스트 관련 함수:
- `append()`, `extend()`: 리스트에 항목을 추가합니다.
- `pop()`, `remove()`: 리스트의 항목을 삭제합니다.🟡 pop()과 remove()의 차이
더보기`pop()`과 `remove()`은 둘 다 리스트에서 원소를 제거하는 함수입니다. 그러나 제거하는 방식과 사용 방법에 차이가 있습니다.
- `pop()`: `pop()`은 리스트에서 지정된 인덱스의 원소를 제거하고 해당 원소를 반환합니다. 제거된 원소는 리스트에서 완전히 삭제됩니다. `pop()`은 인덱스를 기반으로 원소를 제거하기 때문에 `pop(index)`와 같이 사용합니다. 예를 들어, `my_list.pop(2)`는 리스트 `my_list`에서 인덱스 2에 해당하는 원소를 제거하고 반환합니다.
- `remove()`: `remove()`는 리스트에서 첫 번째로 해당하는 값을 갖는 원소를 찾아 제거합니다. `remove()`는 값을 기반으로 원소를 제거하기 때문에 `remove(value)`와 같이 사용합니다. 예를 들어, `my_list.remove(3)`은 리스트 `my_list`에서 값이 3인 첫 번째 원소를 찾아 제거합니다.
간단히 말하면, `pop()`은 인덱스를 기반으로 원소를 제거하고 반환하며, `remove()`는 값을 기반으로 첫 번째로 해당하는 원소를 찾아 제거합니다. 따라서 사용 목적에 따라 적절한 함수를 선택하여 사용해야 합니다.
- `count()`: 리스트에서 특정 항목의 개수를 세어 반환합니다.
- `index()`: 리스트에서 특정 항목의 인덱스를 반환합니다.
- `sort()`: 리스트를 정렬합니다.
3. 문자열 관련 함수:
- `split()`: 문자열을 공백을 기준으로 나누어 리스트로 반환합니다.
- `join()`: 문자열 리스트를 특정 문자로 연결하여 하나의 문자열로 반환합니다.
- `strip()`: 문자열의 양쪽 끝에 있는 공백과 개행 문자를 제거합니다.
- `isdigit()`, `isalpha()`, `isalnum()`: 문자열이 숫자, 알파벳, 알파벳 또는 숫자로 이루어져 있는지 확인합니다.
4. 딕셔너리 관련 함수:
- `keys()`, `values()`, `items()`: 딕셔너리의 키, 값, (키, 값) 쌍을 반환하는 이터레이터를 생성합니다.
- `get()`: 특정 키에 대한 값을 반환하되, 키가 없을 경우 기본값을 반환합니다.
5. 함수형 프로그래밍 관련 함수:
- `map()`: 함수와 이터러블 객체를 인자로 받아, 각 항목에 함수를 적용한 결과를 반환합니다.
- `filter()`: 함수와 이터러블 객체를 인자로 받아, 조건을 만족하는 항목들로 이루어진 이터레이터를 반환합니다.
- `reduce()`: 함수와 이터러블 객체를 인자로 받아, 누적 계산을 수행하여 단일 값으로 반환합니다. (Python 3부터 `functools` 모듈로 이동되었습니다.)
이 외에도 파이썬에는 다양한 유용한 내장 함수와 라이브러리가 있으며, 코딩테스트에서 사용되는 함수는 문제의 요구사항과 조건에 따라 다를 수 있습니다. 문제를 풀 때는 문제의 조건을 잘 이해하고 필요한 함수를 적절하게 활용하는 것이 중요합니다.'Programming > 코딩공부' 카테고리의 다른 글
[프로그래머스] lv1 달리기경주 (0) 2023.08.11 [구름level] 파이썬 - input parsing하는 법 정리 (0) 2023.05.30 구름level 파이썬 코딩테스트 연습 (0) 2023.05.23 [작심n일] 매일매일 꾸준히 코딩테스트 문제 풀기 (1) 2023.03.07 (내가 겪어본) 코딩 시 주의할 점 정리 (with C++) (0) 2022.11.14