루프 내부의 마지막 요소에 언제 있는지 쉽게 아는 방법

루프 내부의 마지막 요소에 언제 있는지 쉽게 아는 방법

2022-10-03 last update

3 minutes reading python shortpost
파이썬 벡터의 마지막 요소에 있는지 감지하는 쉬운 방법

먼저 yield 키워드를 사용하여 생성기를 반환하는 함수를 만듭니다.

from typing import Union, Set, List, Tuple, Any

Vectors = Union[Tuple, List, Set]

def lookthelast(items: Vectors) -> Tuple[Any, bool]:
    lenght_items = len(items)

    for index, value in enumerate(items):
        if index == (lenght_items - 1):
            yield value, True; break

        yield value, False


사용 사례에서 직접 수행할 수 있지만 이를 캡슐화하면 가독성이 향상됩니다. 함수만 가져오고 루프마다 이 코드를 다시 작성하지 않습니다.

사용 사례:

numbers = ["one", "two", "three"]

for value, is_the_last in lookthelast(numbers):
    if is_the_last:
        print("this is the last element -> " + value)
        break

    print(value)


👉 이 예제 실행here