본문 바로가기
카테고리 없음

python set() 함수 이해하기 - 예제 코드 다수

by python pro 2023. 2. 7.
반응형

Python의 set() 함수는 입력된 데이터를 set 자료형으로 변환해주는 함수입니다. set 자료형은 순서가 없고, 중복된 값을 허용하지 않는 자료형입니다.

 

예를 들어, 리스트나 튜플을 set 자료형으로 변환하려면 다음과 같이 할 수 있습니다.

# 리스트를 set으로 변환
numbers = [1, 2, 3, 4, 5]
numbers_set = set(numbers)
print(numbers_set) # {1, 2, 3, 4, 5}

# 튜플을 set으로 변환
alphabets = ('a', 'b', 'c', 'd', 'e')
alphabets_set = set(alphabets)
print(alphabets_set) # {'a', 'b', 'c', 'd', 'e'}

 

빈 set을 생성하려면 set() 함수를 사용하면 됩니다. 이 경우 {}를 사용해도 됩니다.

# 빈 set 생성
empty_set = set()
print(empty_set) # set()
empty_set = {}
print(empty_set) # {}

 

set() 함수는 중복된 값을 허용하지 않습니다.

# 중복된 값을 허용하지 않는 set 생성
duplicate_numbers = [1, 1, 2, 2, 3, 3]
duplicate_numbers_set = set(duplicate_numbers)
print(duplicate_numbers_set) # {1, 2, 3}

 

set() 함수를 활용하는 여러 예제 코드를 가져왔습니다. 

# 새로운 집합 생성
numbers = set([1, 2, 3, 4, 5])
print(numbers)

# 집합에 원소 추가
numbers.add(6)
print(numbers)

# 집합에 원소 제거
numbers.remove(4)
print(numbers)

# 집합의 원소 개수
print(len(numbers))

# 집합간 교집합 구하기
numbers2 = set([3, 4, 5, 6, 7])
print(numbers & numbers2)

# 집합간 합집합 구하기
print(numbers | numbers2)

# 집합간 차집합 구하기
print(numbers - numbers2)

위 코드는 집합을 생성하는 방법, 원소를 추가, 제거하는 방법, 집합의 길이를 구하는 방법, 그리고 집합간의 교집합, 합집합, 차집합을 구하는 방법을 보여줍니다.

 

잘못된 코드 예시는 집합을 생성할때 괄호를 잘못사용하는 경우나, 원소를 추가 혹은 제거 할때 없는 원소를 제거하려고 하는 경우 입니다.

#잘못된 코드 예시입니다.
numbers = set(1, 2, 3, 4, 5)
print(numbers)

numbers.remove(10)
print(numbers)

 

set() 함수도 많이 많이 사용됩니다. 꼭 기억했다가 유용하게 사용하시면 좋을 것 같습니다. 

하나 만 더 ! 리스트 들의 차이를 구할 때도 사용할 수 있습니다. 

# 리스트 2개 차이값
list(set(A)-set(B))
반응형

댓글