상세 컨텐츠

본문 제목

파이썬 사전형.

Maya_Script/Maya_Python

by hwano 2013. 10. 22. 15:27

본문

공부하기 싫어서 데이터형을 리스트만 쓸려고 했는데 도저히 구문이 복잡해 져서 안되겠다..

 

* 사전형의 특징들 요약

 

1. mydictionary = {'key', 'value'} 형식이다.

 

2. value에는 아무거나 써도 되지만 key에는 아무거나 쓸 수 없다. (수정가능한 형식은 key가 될수없다

   즉, 수정가능한 list는 key가 될 수없고 tuple은 key가 될 수 있다. )

 

3. key는 당연한거지만 동일한 key를 중복으로 쓸 수 없다.

 

4. tmp = {'camA': 'camA_Ctrler', 'persp': 'persp', 'top': 'top', 'side': 'side'}

    for i in tmp:
        print i

   이런식으로 돌리면 key값들만 주욱 하나씩 print되어 나온다

 

5. tmp = {'camA': 'camA_Ctrler', 'persp': 'persp', 'top': 'top', 'side': 'side'}

    for i in tmp:
        print tmp[i]

   요래하면 value값들만 주욱 하나씩 print되어 나오고

 

끗.    이만큼만 알면 쓰는데 문제 없겠다

 

 

 

 

 

 

 

 

 

 

 

 

사전형(dict)

 

mydictionary = {'key', 'value'} 


>>> a={'name':'dong', 'age':20}
>>> a
{'age': 20, 'name': 'dong'}
>>> type(a)

<type 'dict' >


사전형은  시컨스형과 다르게 인덱싱이 되지 않는다.  매핑만 된다. 

>>> a={'name':'bk','age':20}
>>> a
{'age': 20, 'name': 'bk'}
>>> a[0]  <-- 이렇게 못쓴다. 인덱싱을 못한다. 

사전을 만드는 방법

>>> d={}
>>> d['str'] = 'abc'
>>> d
{'str': 'abc'}
>>> d['name'] = 'choi'
>>> d
{'name': 'choi', 'str': 'abc'}
>>> d['str']
'abc'
>>> d['name']
'choi'

 


키(key)를 이용해서 값(value)을 불러낸다.

>>> a['age']
20
>>> a['name']
'dong'


사전객체가 중심이라는 것도 재밌다. 

>>> dic1={'name':'dong','age':20}  <- 사전 객체를 하나 만들었다. 
>>> dic1
{'age': 20, 'name': 'dong'}
>>> dic2=dic1                               <-  dic2  를 하나 만들었다. 
>>> dic2
{'age': 20, 'name': 'dong'}


>>> dic1['name']                         
'dong'
>>> dic2['name']                          
'dong'
>>> dic1['name']='geel'                  <- dic1['name'] 에 새로운 값을 넣어보자
>>> dic1
{'age': 20, 'name': 'geel'}
>>> dic2                                        <-  dic2['name'] 에 새로운 값이 자동으로 적용된다. 
{'age': 20, 'name': 'geel'}
 
원본 리스트 객체가 변경이 되면 이를 참조하는 모든 것의 값들도 당연히 변경이 되는 구조( 리스트, 사전형 모두 동일 형식 )

이런식대로 되고 싶지 않다면  copy()  함수를 쓰면 된다.

 

관련글 더보기