본문 바로가기
개발/Python

Python(파이썬) - Collection

by devsu 2020. 4. 6.

리스트(list) - [ ]

  • a = [1,2,3,4,5]
    • a[1] : 2
    • a[-1] : 5
      • 역방향 탐색이 가능
  • len(a)
    • 리스트 개수
  • a.append(6)
    • list 뒤에 추가
  • a.insert(1,10)
    • 1번 Index에 10 추가
  • a.remove(2)
    • 2값 제거
  • del(a[2])
    • 2번 Index 값 삭제
  • a.reverse()
    • 순서 반대로
  • a.sort()
    • 정렬
  • a.sort(reverse=True)
    • 내림차순 정렬
  • a.pop()
    • 하나 꺼내기(제거)
  • a.extend(b)
    • a뒤에 b 추가
  • aa = a.copy()
    • list 복사
  • a.clear()
    • 리스트 비우기

튜플(tuple) - ( )

  • 튜플은 리스트와 달리 값을 바꿀수 없다.
  • a = (1, 3, 5, 7, 9)
  • b = (10, 20, 30, 40)
  • a.index(3) -> 1
  • b.count(10) -> 1

 

집합(set) - { }

  • a = {1, 2, 3, 4, 5}
  • 리스트와 튜플봐 달리 중복을 허용하지않는다.(add해도 무시됨)
  • pop하는 경우 앞에서 부터 나온다(리스트는 뒤에서부터)
  • 추가 - add
  • 삭제 - remove, discard
    • remove는 지우려는 데이터가 없으면 에러 발생
    • discard는 에러가 발생하지 않는다.
  • 5 in a -> True
  • 교집합(a&b), 합집합(a|b, a.union(b)), 차집합(a-b, a.difference(b))
    • a = {1, 2, 3, 4, 5}
    • b = {2, 4, 6, 8, 10}
  • 부분집합
    • a.issubset(b)
  • 하나라도 같은게 있는지
    • a.isdisjoint(b)
      • a와 b가 같은 값이있으면 false
  • 합집합을 만들어 저장
    • a.update(b)
      • b가 a에 들어가며 a 집합 갱신
  • 차집합을 만들어 저장
    • a.difference_update(b)
  • 교집합을 만들어 저장
    • a.intersection_update(b)
  • 교집합의 반대
    • a.symmetric_difference_update(b)

 

사전(dict)

  • key, value가 쌍으로 이루어진 데이터
  • a = {1:"one", 2:"two", 3:"three"}
  • a.keys()
    • key정보
  • a.values()
    • value 정보
  • a.items()
    • key, value 정보

  • 삽입
    • a.update({4:"four"})
    • a.setdefault(5, "five")
    • value값을 주지않으면 None으로 들어간다
  • 삭제
    • a.pop(4)
      • key값을 인자로
    • a.popitem()
      • 맨 뒤의 아이템을 삭제
  • value만 리스트로 만들기
    • aaa = list(a.values())