이터레이터 프로토콜을 구현한 데이터 맵

이터레이터 프로토콜은 파이썬에서 반복 가능한 객체를 구현하는 방법을 제공합니다. 이터레이터 프로토콜을 구현한 데이터 맵은 효과적인 데이터 처리와 반복 작업을 가능하게 합니다.

데이터 맵은 키-값 쌍으로 구성되는 데이터의 모음입니다. 이터레이터 프로토콜을 구현한 데이터 맵은 __iter____next__ 메서드를 정의하여 반복 가능한 객체를 생성합니다. 이를 통해 데이터 맵을 순회하고 각 요소에 접근할 수 있습니다.

다음은 이터레이터 프로토콜을 구현한 데이터 맵의 예시 코드입니다. 이 예시에서는 data_map 클래스가 데이터 맵을 구현하고 있습니다.

class data_map:
    def __init__(self):
        self.data = {"key1": "value1", "key2": "value2", "key3": "value3"}

    def __iter__(self):
        self.keys = list(self.data.keys())
        self.index = 0
        return self

    def __next__(self):
        if self.index < len(self.keys):
            current_key = self.keys[self.index]
            current_value = self.data[current_key]
            self.index += 1
            return f"{current_key}: {current_value}"
        else:
            raise StopIteration

# 데이터 맵 인스턴스 생성
map_instance = data_map()

# 반복문을 통한 데이터 맵 순회
for item in map_instance:
    print(item)

위 코드에서 data_map 클래스는 __iter__ 메서드에서 데이터 맵의 키 목록과 현재 인덱스를 초기화한 후, __next__ 메서드에서 현재 인덱스에 해당하는 키와 값 쌍을 반환합니다. 반복이 완료될 때까지 반복문을 통해 데이터 맵의 모든 요소에 접근할 수 있습니다.

이러한 방식으로 이터레이터 프로토콜을 구현한 데이터 맵은 데이터 처리 및 반복 작업에 유용하게 사용될 수 있습니다.

#python #iterators