Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬 세트 유형

<시간/>

세트는 기본적으로 고유한 해시 테이블 개체의 정렬되지 않은 컬렉션입니다. 집합 합집합, 교집합, 차이 등과 같은 일부 수학 연산에 집합을 사용할 수 있습니다. 집합을 사용하여 컬렉션에서 중복을 제거할 수도 있습니다.

세트는 요소 위치를 기록하지 않습니다. 인덱싱, 슬라이싱 또는 기타 시퀀스 관련 작업을 지원하지 않습니다.

파이썬에는 기본적으로 두 가지 유형의 집합이 있습니다. 세트 그리고 겨울왕국 . frozenset이 변경 불가능한지 여부에 관계없이 세트 유형은 변경 가능합니다. add(), remove() 및 이러한 종류의 작업을 세트에서 수행할 수 있지만 frozenset에서는 불가능합니다.

설정 관련 메소드 및 작업 중 일부는 다음과 같습니다 -

방법 렌즈

len() 메서드는 집합의 요소 수를 반환합니다.

연산(x in s) 또는 (y not in s)

에서 그리고 없음 연산은 집합에 있는 요소의 구성원을 확인하는 데 사용됩니다. 첫 번째 명령문(x in s)에서 값 x가 세트 s에서 사용 가능하면 true를 반환합니다. 요소 y가 집합에 없으면 두 번째 요소(y가 s에 없음)는 true를 반환합니다.

메서드 isdisjoint(other_set)

이 메서드는 other_set이 현재 집합과 연결되어 있지 않은지 여부를 확인합니다. 둘 다에 대해 하나 이상의 요소가 공통인 경우 메서드는 false를 반환합니다.

메서드 issuperset(other_set)

other_set 집합의 모든 요소가 현재 집합에도 있는 경우 이 함수는 true를 반환합니다. 기본적으로 현재 집합이 other_set의 상위 집합인지 여부를 확인합니다.

메서드 합집합(other_set)

Union() 함수는 현재 집합과 other_set에서 모든 요소를 ​​수집하여 새 집합을 반환합니다.

메서드 교차(other_set)

Intersection() 함수는 현재 집합과 other_set에서 공통 요소를 수집하여 새 집합을 반환합니다.

방법 차이(other_set)

차이() 메서드는 집합을 반환합니다. 여기서 최종 집합에는 두 집합의 공통 요소를 제외한 첫 번째 집합의 모든 요소가 포함됩니다.

메서드 추가(요소)

집합에 요소 요소를 추가합니다.

메서드 폐기(요소)

집합에서 요소 요소를 제거합니다. 요소가 집합에 있을 때 작동합니다. remove()라는 또 다른 메소드가 있습니다. remove()에서 항목이 세트에 없으면 KeyError가 발생합니다.

예시 코드

mySet1 = {1, 2, 5, 6}
mySet2 = {8, 5, 3, 4}
mySet3 = set(range(15)) # all elements from 0 to 14 in the set
mySet4 = {10, 20, 30, 40}
print(set(mySet1.union(mySet2)))
print(set(mySet1.intersection(mySet2)))
print(set(mySet1.difference(mySet2)))

print(mySet3.issuperset(mySet1))
print(mySet1.isdisjoint(mySet4))

mySet4.add(45)
print(mySet4)

mySet4.discard(40)
print(mySet4)

출력

set([1, 2, 3, 4, 5, 6, 8])
set([5])
set([1, 2, 6])
True
True
set([40, 10, 20, 45, 30])
set([10, 20, 45, 30])