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)
이런 접근 방식도 작동할 거야. 응, 집합 요소들을 다루는 데는 다양한 방법이 있으니까 원하는 방법을 사용해봐.
GO TO FULL VERSION