CodeGym /행동 /Python SELF KO /집합의 요소를 순회하는 반복문

집합의 요소를 순회하는 반복문

Python SELF KO
레벨 9 , 레슨 7
사용 가능

7.1 for 반복문

프로그래밍에서 집합의 요소를 순회하기 위해 반복문을 사용하는 것은 흔한 작업이야, 특히 집합의 모든 요소를 처리해야 할 때.

Python에서 집합의 요소를 순회하기 위해 일반적으로 for 반복문을 사용해. 집합은 고정된 순서가 없기 때문에, for 반복문은 집합의 요소를 순회하는 데 완벽하게 적합해 (iterators 메커니즘을 사용하기 때문이야).

예시:


my_set = {1, 2, 3, 4, 5}

for element in my_set:
    print(element)
        

진짜 간단하지 – 몇 가지 실용적인 예제를 추가해볼게:

집합 요소의 합계

집합의 모든 요소를 더하는 예시를 살펴보자.


my_set = {1, 2, 3, 4, 5}
total = 0
            
for element in my_set:
    total += element
            
print("집합 요소의 합계:", total)
            
        

출력:


집합 요소의 합계: 15
        

이 예제에서 우리는 for 반복문을 사용해서 my_set의 각 요소를 total 변수에 하나씩 더해주고, 결국 집합의 모든 요소의 합계를 구해.

최대 요소 찾기

이제 집합에서 최대 요소를 찾아볼게.


my_set = {1, 2, 3, 4, 5}
max_element = None
            
for element in my_set:
    if max_element is None or element > max_element:
        max_element = element
            
print("집합의 최대 요소:", max_element)
        

출력:


집합의 최대 요소: 5
        

이 예제에서 for 반복문을 사용해 집합의 모든 요소를 순회하며 최대값을 찾아.

요소 필터링

원래 집합에서 짝수만 포함한 새로운 집합을 만들어 보자.


my_set = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
even_set = set()
            
for element in my_set:
    if element % 2 == 0:
        even_set.add(element)
            
print("짝수 집합:", even_set)
            
        

짝수 집합: {2, 4, 6, 8, 10}

이 예제에서는 for 반복문을 사용해 조건에 맞는 요소(짝수)를 필터링하고, 새 집합 even_set에 추가해.

7.2 enumerate() 사용하기

enumerate() 함수는 인덱스와 이터러블 객체의 해당 요소로 이루어진 튜플을 생성하는 이터레이터를 반환해.

집합과 작업할 때, enumerate()는 순회 중 요소의 인덱스를 얻는 데 유용할 수 있어. 하지만 집합은 정렬되지 않은 컬렉션이기 때문에 각 순회 시 요소의 순서는 보장되지 않아.

enumerate() 함수는 다른 이터러블 객체와 마찬가지로 집합에서도 잘 동작해.

인덱스를 사용한 순회

순회 중에 집합의 요소에 대한 인덱스를 얻기 위해 enumerate()를 사용해보자.


my_set = {10, 20, 30, 40, 50}

for index, element in enumerate(my_set):
    print(f"인덱스: {index}, 요소: {element}")
        

가능한 출력:


인덱스: 0, 요소: 40
인덱스: 1, 요소: 10
인덱스: 2, 요소: 50
인덱스: 3, 요소: 20
인덱스: 4, 요소: 30
        

인덱스와 요소를 리스트에 저장하기

집합의 인덱스와 요소를 리스트에 저장하여 나중에 처리하는 예제를 살펴보자.


my_set = {"apple", "banana", "cherry"}

indexed_elements = [(index, element) for index, element in enumerate(my_set)]
print(indexed_elements)
        

가능한 출력:


[(0, 'banana'), (1, 'cherry'), (2, 'apple')]
        

인덱스를 사용하여 요소 처리하기

요소의 인덱스를 사용하여 집합의 요소에 대해 특정 작업을 수행하는 예제를 살펴보자.


my_set = {1, 2, 3, 4, 5}
squared_elements = {}
            
for index, element in enumerate(my_set):
    squared_elements[index] = element ** 2
            
print(squared_elements)
            
        

가능한 출력:


{0: 16, 1: 1, 2: 25, 3: 4, 4: 9}
        

7.3 while 반복문 사용하기

원칙적으로 집합을 다룰 때 while 반복문도 사용할 수 있어. 예를 들어, 집합이 비어 있을 때까지 요소(작업)를 하나씩 꺼낼 수 있어:


my_set = {"집 청소하기", "설거지하기", "빵 사기"}
while len(my_set) > 0:
    task = my_set.pop()
    print(task)
        

이런 접근 방식도 작동할 거야. 응, 집합 요소들을 다루는 데는 다양한 방법이 있으니까 원하는 방법을 사용해봐.

코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION