낭만개발자
낭만개발자
낭만개발자
전체 방문자
오늘
어제
  • 분류 전체보기 (57)
    • Web) HTML & CSS (5)
    • Web) HTTP (2)
    • 언어) Java (2)
    • 언어) Python (6)
    • 언어) PHP (1)
    • Linux (2)
    • 데이터 관리) Pandas (4)
    • Algorithms (13)
    • 개발자 역량 (4)
    • 프로젝트 (14)
      • Django 초기 프로젝트 (1)
      • CatCoDog _ 반려동물 식품 판매 사이트 (9)
      • 개인 홈서버 프로젝트 (2)
      • 이력핏 : AI가 추천해주는 이력서 (2)
    • 문제와 사고 (2)
    • ETC (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 파이썬 숫자형
  • Leetcode
  • css basic
  • algorithm
  • python
  • 장고 초기 세팅
  • css 기본
  • 오늘의 문제
  • python operator
  • Merge Sorted Array
  • 파이썬 자료형
  • 파이썬 기초
  • WEB
  • 웹개발
  • 파이썬
  • Java
  • JWT 웹
  • leetcode88
  • css
  • python basic
  • catcodog
  • 리눅스
  • Unique Paths
  • rainbow table
  • Number Of Island
  • 파이썬 기본
  • css 포지션
  • css 위치변경
  • django setting
  • dp

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
낭만개발자

낭만개발자

[Python] Python 자료형(6): 집합(Set)형
언어) Python

[Python] Python 자료형(6): 집합(Set)형

2022. 5. 8. 11:49

[Python] 파이썬 자료형(6) 집합(Set)형

​

​
​

집합형 (Set)

​
집합(Set)형 은 말 그대로 데이터들의 집합을 관리하는 자료형입니다.
​
다음과 같이 set()의 괄호 안에 리스트나 문자열을 입력하여 생성합니다.
​


​
​
!!!
​
​
그런데 조금 이상하지 않나요?
​
우선 출력결과가 순서 없이 뒤죽박죽으로 섞여있습니다.
​
그리고 중복되는 문자들도 하나씩만 출력됩니다.
​
여기서 집합 자료형의 중요한 특징 두 가지를 알 수 있습니다.
​

1. 중복을 허용하지 않는다. 
2. 순서가 없다. 

​
리스트나 튜플 자료형은 순서가 있기(ordered) 때문에, 인덱싱 및 슬라이싱을 통해 자료형의 값을 얻을 수 있었지만, 집합자료형은 딕셔너리 자료형과 같이 순서가 없기(unordered) 때문에 인덱싱 및 슬라이싱으로 값을 얻을 수 없습니다.
​
각 자료형의 특징들 비교는 다음 장에서 해드리겠습니다.
​
​

1_(1) (기호를 이용한)집합 자료형의 연산

​
집합 자료형을 통해 각 자료들의 교집합 합집합, 차집합등을 구할 수 있습니다.
이는 집합자료형에서 매우 유용하게 쓰이는 기능이니, 잘 숙지할 수 있도록 합니다.
​
​
1. 교집합: 집합명 & 집합명
​

    set_1 = set([1, 2, 3, 4, 5, 6])
    set_2 = set([4, 5, 6, 7, 8, 9])
    print(set_1 & set_2)
    => {4, 5, 6}

​
​
2. 합집합: 집합명 | 집합명
​

    set_1 = set([1, 2, 3])
    set_2 = set([4, 5, 6])
    print(set_1 | set_2)
    => {1, 2, 3, 4, 5, 6}

​
​
3. 차집합: 집합명 - 집합명
​

    set_1 = set([1, 2, 3, 4, 5, 6])
    set_2 = set([4, 5, 6])
    print(set_1 - set_2)
    => {1, 2, 3}

​
​

1_(2) (함수를 이용한) 집합 자료형의 연산

​
​
1. 교집합: 집합명.intersection(집합명)
​

    set_1 = set([1, 2, 3, 4, 5, 6])
    set_2 = set([4, 5, 6, 7, 8, 9])
    print(set_1.intersection(set_2))
    => {4, 5, 6}

​
​
2. 합집합: 집합명.union(집합명)
​

    set_1 = set([1, 2, 3])
    set_2 = set([4, 5, 6])
    print(set_1.union(set_2))
    => {1, 2, 3, 4, 5, 6}

​
​
3. 차집합: 집합명.difference(집합명)
​

    set_1 = set([1, 2, 3, 4, 5, 6])
    set_2 = set([4, 5, 6])
    print(set_1.difference(set_2))
    => {1, 2, 3}

​
​

2) 집합 자료형 활용하기

​
집합 자료형에 대한 개념과 연산에 대해 알아보았으니, 마지막으로 집합 자료형과 관련된 유용한 함수 몇 가지를 알아보겠습니다.
​
​
1. 값 1개 추가하기: 집합명.add(값)
​

    set_name = set([1, 2, 3, 4])
    set_name.add(5)
    print(set_name)
    => {1, 2, 3, 4, 5}

​
​
2. 값 여러 개 추가하기: 집합명.update(list 형태의 값)
​

    set_name = set([1, 2, 3, 4])
    set_name.update([5, 6, 7])
    print(set_name)
    => {1, 2, 3, 4, 5, 6, 7}

​
​
3. 특정 값 제거하기: 집합명.remove(값)
​

    set_name = set([1, 2, 3, 4, 5])
    set_name.remove(5)
    print(set_name)
    => {1, 2, 3, 4}
저작자표시 (새창열림)

'언어) Python' 카테고리의 다른 글

[Python] Python 자료형(5): 딕셔너리(Dictionary)형  (0) 2022.05.02
[Python] Python 자료형(4): 튜플(Tuple)형 (feat. 리스트형)  (0) 2022.05.01
[Python] Python 자료형(3): 리스트(List)형  (0) 2022.05.01
[Python] Python 자료형(2): 문자열(String)형  (0) 2022.05.01
[Python] Python 자료형(1) 숫자(Number)형과 연산자  (0) 2022.04.28
    낭만개발자
    낭만개발자
    Learning By Doing!💪

    티스토리툴바