>  기사  >  백엔드 개발  >  Python 컬렉션의 개념은 무엇입니까? Python 컬렉션 소개

Python 컬렉션의 개념은 무엇입니까? Python 컬렉션 소개

不言
不言앞으로
2018-10-09 16:08:584066검색

이 기사에서는 Python 컬렉션의 개념이 무엇인지 설명합니다. Python 컬렉션의 소개에는 특정 참고 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

세트 설명

세트는 순서가 없고 반복되지 않는 데이터 컬렉션입니다. 세트 자체는 변경할 수 있지만 내부 요소는 변경할 수 없는 유형입니다(여기서 목록을 포함하는 튜플도 아니요, 그래야 합니다. 완전히 불변 유형)

컬렉션 생성

컬렉션 생성은 요소를 쉼표로 구분하는 중괄호 {}를 사용하여 생성할 수 있지만, {}는 빈 사전을 생성하므로 빈 컬렉션을 생성하는 데 사용할 수 없습니다.

如 set1 = {1,2,3}

set() 함수를 사용하여 매개변수가 반복 가능한 객체(예: 문자열, 목록, 튜플, 반복자 등)인 집합을 만들 수도 있습니다. 단, 요소는 변경 불가능한 유형이어야 합니다.

i = 'abcdefg'
a =set(i)
print(type(a))
print(a)
----------
<class &#39;set&#39;>
{'b', 'a', 'f', 'd', 'g', 'e', 'c'}

add update

add(elem)
요소가 이미 존재하는 경우에는 변경 사항이 적용되지 않습니다.

s1 = {1,2,3}
s1.add('qwe')
print(s1)
----------
{1, 2, 3, 'qwe'}

update(*others)
추가할 수 있습니다. 다른 요소를 컬렉션에 추가합니다. 객체(예: 문자열, 목록, 튜플)를 반복하고 컬렉션에 추가하여 중복 요소를 자동으로 제거합니다

s1 = {1,2,3}
it = [3,4,5]
s1.update(it)
print(s1)
----------
{1, 2, 3, 4, 5}

delete Remove(elem) Discard(elem) pop()clear()

remove(elem)
컬렉션에서 요소를 삭제합니다. 요소가 존재하지 않으면 오류가 보고됩니다.

s1 = {1,2,3}
s1.remove(2)
print(s1)
----------
{1, 3}

discard(elem)
는 제거와 마찬가지로 컬렉션에서 요소를 삭제할 수 있습니다. 차이점은 요소가 존재하지 않으면 오류가 보고되지 않는다는 것입니다.

s1 = {1,2,3}
s1.discard(6)
print(s1)
----------
{1, 2, 3}

pop()
세트에서 요소를 무작위로 삭제하고 요소를 반환합니다. 세트가 비어 있으면 오류가 보고됩니다.

s1 = {1,2,3}
a = s1.pop()
print(s1)
print(a)
----------
{2, 3}
1

clear()
를 사용하여 세트를 지웁니다.

다양한 연산 방법

집합에는 여러 가지 연산 방법이 있습니다: 교집합, 합집합, 차이 집합, 역교차, 부분 집합, 슈퍼 집합
다음은 코드를 사용하여 각 방법의 사용법을 자세히 설명합니다

s1 = {1,2,3,4,5}
s2 = {3,4,5,6,7}
print('交集:',s1 & s2) #可用&或者intersection,输出一个新的集合,包含共同拥有的元素
print('交集:',s1.intersection(s2))
print('并集:',s1 | s2) #可用|或者union,输出一个新的集合,包含两个集合中所有的元素(去重)
print('并集:',s1.union(s2))
print('差集:',s1 - s2) #可用 - 或者difference,输出一个新的集合,包含前一个集合中除去共有的元素
print('差集:',s1.difference(s2))
print('反交集:',s1 ^ s2) #可用^或者 symmetric_difference,输出一个新的集合,包含两个集合中除去共有的元素后剩余的所有元素
print('反交集:',s1.symmetric_difference(s2))
    交集: {3, 4, 5}
    交集: {3, 4, 5}
    并集: {1, 2, 3, 4, 5, 6, 7}
    并集: {1, 2, 3, 4, 5, 6, 7}
    差集: {1, 2}
    差集: {1, 2}
    反交集: {1, 2, 6, 7}
    反交集: {1, 2, 6, 7}

하위 집합 및 간단히 말하면, 한 세트의 요소는 다른 세트의 모든 요소를 ​​포함하고, "큰" 세트를 상위 세트라고 하며, "작은" 세트를 하위 세트라고 합니다

s1 = {1,2,3}
s2 = {1,2,3,4,5}
print(s1.issubset(s2)) #输出为True,s1是s2的子集
print(s2.issuperset(s1))#输出为True,s2是s1的超集
----------
    True
    True

또한, Frozenset( '컬렉션 이름'), 컬렉션을 불변 컬렉션으로 바꿀 수 있습니다

위 내용은 Python 컬렉션의 개념은 무엇입니까? Python 컬렉션 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제