맨날 까먹는 파이썬 문법

2024. 12. 14. 10:57·개발

Dictionary

- 딕셔너리 타입은 immutable한 key와 mutable한 value로 맵핑 되어 있는 순서가 없는 집합

//일반적인 형태
{'a': 1, 'b': 2}

- key로는 immutable한 값만 사용 할 수 있음 (예를 들어, int/tuple/float/bool 사용 가능 but set/list/dict 사용 불가)

- key가 중복되면 마지막 값으로 덮어씌워짐

- mutable한 객체이기에 키로 접근하여 값 변경가능

>>> dic["key"] = "any value"
>>> dic
{ 'key' : "any value" }

- 리스트 속의 리스트/튜플 또는 튜플과 리스트/튜플을 dict로 변형 가능

>>> this_is_list = [ ["testKey", 1], ["testKey2",2] ]
>>> dict(this_is_list)
{ 'testKey' : 1, 'testKey2':2 }


>>> this_is_tuple = [ ("tupKey", 1), ("tupKey2",2) ]
>>> dict(this_is_list)
{ 'tupKey' : 1, 'tupKey2':2 }

 

- 여러 키의 값을 수정할 경우 'update'메소드를 사용. 키가 없으면 추가됨.

 

매번 헷갈리는 부분!

 

- dictionary를 for 문 돌리면 key값이 할당되고 순서는 임의적이다.

- value 값으로 for을 돌리려면 `values()`를 사용하면됨. 

- key와 value 한번에 for문 도려면 `items()` 사용하면 됨

 

>>> a = {'alice': [1, 2, 3], 'bob': 20, 'tony': 15, 'suzy': 30}
>>> for key in a:
...     print(key)
... 
alice
bob
tony
suzy


>>> for val in a.values():
...     print(val)
... 
[1, 2, 3]
20
15
30    

>>> for key, val in a.items():
...     print("key = {key}, value={value}".format(key=key,value=val))
... 
key = alice, value=[1, 2, 3]
key = bob, value=20
key = tony, value=15
key = suzy, value=30

 

 

- dictionary의 `in` method는 키값이 존재하는지 확인 할때 사용

- `del a["alice"]` 키 삭제

 

 

 

저작자표시 비영리 동일조건 (새창열림)

'개발' 카테고리의 다른 글

맨날 헷갈리는 파이썬 hash table  (0) 2024.12.14
맨날 헷갈리는 파이썬 리스트 문법  (0) 2024.12.14
AWS transit gateway  (0) 2024.11.25
SSE 이벤트 푸쉬로 불필요한 polling 제거하기  (2) 2024.10.23
Spring boot application.yml Configuration  (2) 2024.10.18
'개발' 카테고리의 다른 글
  • 맨날 헷갈리는 파이썬 hash table
  • 맨날 헷갈리는 파이썬 리스트 문법
  • AWS transit gateway
  • SSE 이벤트 푸쉬로 불필요한 polling 제거하기
senyalog
senyalog
개발 블로그 https://github.com/iamyunjuda
  • senyalog
    Senya의 개발 블로그
    senyalog
  • 전체
    오늘
    어제
    • 분류 전체보기 (77)
      • 일상 (6)
      • 알고리즘 이론 (14)
        • 백준 (8)
      • 개발 (47)
        • Server (7)
        • 인턴 (11)
        • Javascript (0)
      • 경제 (4)
  • 블로그 메뉴

    • Github
    • 홈
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    MSA
    알고리즘공부
    서버
    공부
    코딩
    코딩테스트
    컴공
    깃
    개발공부
    TypeScript
    이마고웍스
    C++
    인턴
    생각
    인턴생활
    경제
    알고리즘
    백준
    백엔드
    대학생
    nestjs
    대학생인턴
    GIT
    백준풀이
    개발
    백준문제
    일상
    공대생
    개발자
    카페
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
senyalog
맨날 까먹는 파이썬 문법
상단으로

티스토리툴바