반응형

안녕하세요 Hi Create입니다!!

오늘은 파이썬의 사전 객체에 대해 소개해보도록 하겠습니다.

 

사전 객체란 무엇일까? 이름만 보면 굉장히 생소합니다.

파이썬에서는 사전 객체를 리스트의 객체에 값을 부여하는 것으로 정의하고 있습니다.

예를 들자면 알파벳에 순서를 매겨 'A'를 1로 'B'를 2로 지정해두는 것이죠.

 

이 기능은 다양한 곳에서 쓸 수 있습니다. 예를 들어 데이터베이스를 만든다던지 할 때 쓸 수 있겠죠.

사전 객체는 매핑(Mapping)형입니다. 이는 자료의 순서를 매길 수 없음을 의미하죠.

전에 포스팅했던 리스트, 튜플은 집합적이라는 것에서 사전 객체와 비슷하지만 시퀀스 자료형(Sequence), 즉 자료의 순서를 매길 수 있는 자료형이었죠. ( 시퀀스와 문자열, 리스트, 튜플 )

 

사전 객체는 두 가지로 구성이 됩니다. 키와 값이죠.

위와 같은 상자에 키(key)와 값(value)가 차례대로 들어가고 서로 대응하게 되는 것이죠.

그럼 파이썬에서 어떻게 사용하는지 알아보도록 하겠습니다.

 

파이썬에서는 변수이름 = {'키':값} 형식으로 씁니다.

1
2
3
4
5
6
7
8
member = {'guitar':1'base':2'drum':3#'키':값 형식으로 씁니다.
member['base'#결과값은 2가 나옵니다.
member['vocal'= 4 #새로운 키가 들어오면 값을 추가합니다.
member['guitar'= 5 #원래 있던 키는 값을 변경합니다.
member #전체를 출력합니다.
len(member) #길이를 출력합니다.(4가  나옵니다.)
del member['guitar'#키와 값이 삭제됩니다.
member
cs

그럼 사용법은 익혔습니다. 그런데 모든 자료형이 그렇듯 제한이 있겠죠?

키에는 문자열, 숫자, 튜플과 같은 변경이 불가능한 자료형이 와야합니다. 그러니 리스트나 사전은 키가 될 수 없습니다.

함수를 키나 값으로 사용할 수는 있는데요 예시를 보여드릴게요.

1
2
3
4
5
def add(a,b):
    return a+b
def sub(a,b):
    return a-b
calculator = {0:add, 1:sub}
cs

사전도 리스트와 마찬가지로 빈 사전을 생성할 수 있습니다 ( dict()라고 하면 됩니다. )

또 원래 있는 시퀀스 자료형을 엮어버릴 수도 있습니다.

1
2
3
key = ['one''two''three']
value = (1,2,3)
dict(zip(key,value))
cs

(zip는 자료를 순서대로 묶습니다.)

 

이번 포스팅은 여기서 마치고 다음 포스팅에서 사전객체의 메쏘드들, 심볼테이블, for문 참조를 알아보겠습니다.



반응형

BELATED ARTICLES

more