파이썬에서 Dictionary는 중요한 자료형 중 하나이다.
사실, 생각보다 학부 과제 정도를 해결할 때는 그렇게 많이 쓰진 않았었다.
그런데, 회사나 대학원에서는 생각보다 쓰임이 다방면으로 다양한 친구이다.
What is the Dictionary?
Dictionary는 말 그대로 사전과 같은 형식으로 떠올리면 된다.
흔히들 우리가 사전을 찾을 때, 사과를 찾으면 사과에 대한 뜻이 있듯이 사과가 Key이고 사과에 대한 뜻이 Value로 간주되는 것이다.
따라서, 기본 구성은 다음과 같다. {Key1: Value1, Key2: Value2, Key3: Value3, ...}
Basic Dictionary
Dictionary에 대한 기초적인 다루는 방법은 다음 글에 잘 정리되어 있다.
다만, 빈 Dictionary에 대한 정의 부분은 없는데 너무 단순해서 내용에 빠진 것 같기도 하다.
단순하게 {}으로만 지정한 후, 이후 원하는 값들을 추가해주기만 하면 된다.
dic_ex = {}
Dictionary Slicing
Dictionary를 사용하다보면 slicing에 대한 욕구가 생기는데, 사실 파이썬 3.6 이하로 처음 사용했던 나에게는 나름 불편했던 점 중 하나였다.
그러나, 파이썬의 버전이 업그레디으 되면서 3.7 이상부터는 다음 수식을 통해 Slicing을 할 수 있게 되었다.
import itertools
d = {1: 2, 3: 4, 5: 6}
dict(itertools.islice(d.items(), 2))
다음과 같이 작성하게 되면, 출력 값으로는 다음을 얻을 수 있다.
{1: 2, 3: 4}
윗 코드에서 2
부분을 슬라이싱이 원하는 숫자로 변경하면 원하는 부분까지의 결과를 얻을 수 있다.
그렇다면 중간 부분만 출력하고 싶을때는 어떻게 해야 할까?
List를 Slicing 하는 것과 동일하게 간단히 해결할 수 있다.
import itertools
d = {1: 2, 3: 4, 5: 6, 7: 8, 9: 10}
dict(itertools.islice(d.items(), 2, 4))
이렇게, items() 뒤로 시작 위치와 끝 위치
를 넣어서 사용하면 다음과 같이 Dictionary의 3번째와 4번째를 출력할 수 있다.
{5: 6, 7: 8}
시작 위치는 그다음부터, 끝 위치는 그 부분까지 포함되어 출력되는 점만 유의해서 사용하면 된다.
'Coding Practice > Python' 카테고리의 다른 글
Set (0) | 2024.07.19 |
---|---|
List - 요소 별 Count (0) | 2024.07.16 |
Data Frame - to_list(), tolist() (0) | 2024.07.13 |
Data Frame - 읽기, 저장, 전체 출력 (0) | 2024.07.10 |
파이썬 .txt 읽기 - readline(), readlines(), read(), strip() (2) | 2024.02.28 |