ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬 코딩테스트에서 유용한 함수 정리
    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` 모듈로 이동되었습니다.)

    이 외에도 파이썬에는 다양한 유용한 내장 함수와 라이브러리가 있으며, 코딩테스트에서 사용되는 함수는 문제의 요구사항과 조건에 따라 다를 수 있습니다. 문제를 풀 때는 문제의 조건을 잘 이해하고 필요한 함수를 적절하게 활용하는 것이 중요합니다.

     

     

     

     

    댓글

Designed by Tistory.