파이썬 자료형 공부 - dict, defaultdict, set

thousand_yj·2023년 6월 19일
0

코딩테스트

목록 보기
3/11

딕셔너리

dict() or {키:값} 형태로 사용

  • mydict.keys() : 키 값들 리턴. list()함수로 감싸 리스트로 형태로 변환해도 ok. for문 바로 사용 가능. append, sort 메소드 바로 사용 불가!

  • mydict.values() : 값 value들 리턴. list()함수로 감싸 리스트로 형태로 변환해도 ok.

  • mydict.items() : (key:value) 튜플 형태의 값. list()함수로 감싸 리스트로 형태로 변환해도 ok.

  • mydict.get(키) : 키값에 맞는 value 리턴. 없는 항목 조회 시 None리턴

    • get(키, 디폴트값) 사용하여 없는 경우 디폴트값 리턴하도록 설정 가능
  • ___ in mydict : 키 값 있는지 체크

  • dict.fromkeys(키) : 키 값으로 dict 생성.

    • dict.fromkeys(키, 값) : {키:값}으로 생성도 가능
  • mydict["키"] = 값 : 키&값 추가

  • del mydict[키] : 키&값 제거 (이렇게 안하고 그냥 값 넣으면 예전 값 무시하고 업데이트)

  • 활용

    • 순서를 보장하는 중복X 자료 만드는 법
      ordered_set_arr = list(dict.fromkeys(arr))  # 순서보장방법

defaultdict

파이썬의 내장 모듈인 collectionsdefaultdict 클래스는 딕셔너리에 키 값이 없을 때 keyError 예외상황을 자동으로 처리해준다. defaultdict 모든 키에 대해서 값이 없는 경우 알아서 키를 생성하고 값을 설정해줍니다.

not in dictionary를 직접 써주기 귀찮다면 good!

중복 허용X Set 자료형

  • set() 형태로 사용 <- 리스트나 문자열 전달 가능
    순서가 없다!! -> 인덱싱 지원X. 인덱싱 쓰고 싶으면 list() 변환 후 접근

  • 활용

    • 교집합 : & 연산자 or set1.intersection() 사용
    • 합집합 : | 연산자 or set1.union() 사용
    • 차집합 : - 연산자 or set1.difference() 사용
  • set1.add(값) : 값 추가

  • set1.update([값1, 값2, 값3]) : 값 여러개 추가

  • set1.remove(값) : 값 제거

profile
함께 일하고 싶은 개발자가 되기 위해 노력합니다. 코딩테스트 관련 공부 및 이야기는 티스토리에도 업로드되어 있습니다.

0개의 댓글