Chapter03-6 집합

    728x90

    #Chapter03-6
    #집합(set) 특징
    #집합(set) 자료형 (순서x, 중복X)


    #선언
    a = set()

    print(type(a))
    b = set([1,2,3,4])
    c = set([1,4,5,6])
    d = set([1,2,'pen','cap','plate'])
    e = {'foo','bar','baz','foo','qux'} #키가 없으면{}는 set
    f = {42, 'foo', (1,2,3), 3.141592}

    print('a - ', type(a),a)
    print('b - ', type(b),b)
    print('c - ', type(c),c)
    print('d - ', type(d),d)
    print('e - ', type(e),e)
    print('f - ', type(f),f)

    #튜플 변환(set => tuple)
    t = tuple(b)
    print('t -', type(t), t)
    print('t -', t[0], t[1:3])


    #리스트 변환
    l = list(c)
    l2 = list(e)

    print('l - ', l)
    print('l2 - ', l2)

    #길이
    print(len(a))

    #집합 자료형 활용
    s1 = set([1,2,3,4,5,6])
    s2 = set([4,5,6,7,8,9])

    print('s1 & s2 :', s1&s2)
    print('s1 & s2 :', s1.intersection(s2)) #교집합

    print('s1 | s2 :', s1|s2)
    print('s1 | s2 :', s1.union(s2)) #합집합

    print('s1 - s2 :', s1 - s2)
    print('s1 - s2 :', s1.difference(s2)) #차집합

    #중복 원소 확인
    print('s1 & s2 :', s1.isdisjoint(s2)) #교집합유/무 유-false 무-True

    #부분 집합 확인
    print(s1.issubset(s2)) #s1(s2
    print(s1.issuperset(s2)) #s1)s2

    #추가 & 제거
    s1 = set([1,2,3,4])

    s1.add(5)
    print('s1 -', s1)

    s1.remove(2) # 없는 값 에러 발생
    print('s1 -', s1)
    #s1.remove(7)

    s1.discard(3) # 에러 발생하지 않음
    print('s1 -', s1)
    s1.discard(7)

    s1.clear() #전부 제거
    print('s1 -',s1)

    a = [1,2,3] #리스트도 clear가능
    a.clear()
    print('a -',a)

    'Python > 문법' 카테고리의 다른 글

    파이썬 - 변수, 자료구조  (0) 2021.12.28
    Chapter04 조건문, 반복문  (0) 2021.12.28
    Chapter03-5 딕셔너리  (0) 2021.12.26
    Chapter03-4 튜플  (0) 2021.12.26
    Chapter03-3 리스트  (0) 2021.12.26

    댓글