• 2020. 6. 18.

    by. 윈썸지니

    반응형

    출처 : pixabay

    이전 포스팅에서 딕셔너리(dictionary)  자료형에 대한 개념을 포스팅하였습니다.

    이번 포스팅은 딕셔너리 관련된 함수들에 대해 다루어 보겠습니다.

     

    딕셔너리 자료형의 개념은 이전 포스팅을 참고하세요.

    [IT 이야기 공간/프로그램 언어 및 Database] - 파이썬 기초 데이터 유형 – 딕셔너리 ( Dictionary ) 자료형

     

    파이썬 기초 데이터 유형 – 딕셔너리 ( Dictionary ) 자료형

    파이썬의 자료형 중 딕셔너리에 대해 포스팅 합니다. ● 딕셔너리 자료형은 ? 딕셔너리를 직역해 보면 사전이란 의미 이듯이 사전 처럼 요소값에 접근 할 수 있습니다. 리스트 또는 튜플 처럼 순

    jinisbonusbook.tistory.com

    파이썬에서 딕셔너리는 키와 값 (Key & value) 이루어진 쌍들의 집합입니다.

    그래서 리스트와 같이 인덱스로는 접근 할 수 없고 키로 접근 할 수 있습니다.

    따라서 순서가 있다고 할 수도 없습니다.

     

    딕셔너리 key 가져오기

     

    Keys()  라는 메소드를 이용하면 key 값을 가져옵니다. 그런데 반환값이 dict_keys 라는 객체로 반환을 합니다.

    >>> dic = { 'a':1, 'b':2, 'c':3 }
    >>> dic.keys()
    dict_keys(['a', 'b', 'c’])

    ## dict_keys 객체를 리스트로 변환하여 사용합니다.
    >>> list(dic.keys())
    ['a', 'b', 'c’]

    딕셔너리 values 값 가져오기

     

    값에 해당하는 요소만 가져오고 싶다면 keys()  를 사용한 것 처럼 values를 사용합니다.

    역시 반환 값이 dict_values 라는 객체를 반환합니다.

    >>> dic.values()
    dict_values([1, 2, 3])

    ## dict_values 객체를 리스트로 변환하여 사용합니다.
    >>> list(dic.values())
    [1, 2, 3]

    딕셔너리 key value 가져오기

     

    키와 값에 해당하는 요소를 모두 가져오려면  items()를 사용합니다.

    역시 반환 값이 dict_itms 라는 객체를 반환합니다.

    >>> dic.items()
    dict_items([('a', 1), ('b', 2), ('c', 3)])

    ## 리스트로 변환합니다.
    >>> list(dic.items())
    [('a', 1), ('b', 2), ('c', 3)]

    ## 딕셔너리를 리스트로 바로 변환해 보니 key 값만 가져옵니다.
    >>> list(dic)
    ['a', 'b', 'c’]

    ## 딕셔너리를 튜플로 바로 변환해 보니 key 값만 가져옵니다.
    >>> tuple(dic)
    ('a', 'b', 'c’)

     

    key 딕셔너리 안에 존재하는지 확인하는 방법

     

    in 딕셔너리명의 형식으로 사용합니다.

    >>> dic = {a: 1, b: 2, c: 3}

    ## ‘aa’는 키에 없으므로 False를 반환합니다.

    >>> 'aa' in dic

    False


    ##
    a’는 키에 있으므로 False를 반환합니다.

    >>> a in dic

    True


    ## 1
    value 로 존재하지만 키는 아니므로  false를 반환합니다.

    >>> 1 in dic

    False

    >>>

    딕셔너리 값 수정

     

    키로 접근하여 수정 합니다.

    >>> dic = {'a': 1, 'b': 2, 'c': 3}
    >>> dic['a'] = 5
    >>> dic
    {'a': 5, 'b': 2, 'c': 3}
    >>> 

    여러 값을 한번에 수정하려면 update()를 사용합니다.

    >>> dic = {'a': 1, 'b': 2, 'c': 3}

    ## 없는 키 값이면 추가 됩니다.

    >>> dic.update({'a':10, 'c': [1,5], 'd':12})

    >>> dic

    {'a': 10, 'b': 2, 'c': [1, 5], 'd': 12}

    >>>

    딕셔너리 요소 삭제

     

    그동안 리스트 등에서도 사용했던  del을 사용하면 됩니다.

    >>> del dic['a']
    >>> dic
    {'b': 2, 'c': [1, 5], 'd': 12}
    >>> 

     

    딕셔너리 요소 모두 삭제

     

    딕셔너리로 만들어 주는 방법입니다. Clear을 사용합니다.

    >>> dic ={'b': 2, 'c': [1, 5], 'd': 12}

    >>> dic.clear()

    >>> dic

    {}

    >>>

    딕셔너리 value를 가져오는 다른 방법

     

    키로 접근하여 값을 얻을 수 있습니다. 그리고 get 메소드를 사용하여 value 를 얻을 수 있습니다.

    차이점은 없는 키 값을 넣었을 때 오류를 반환 하는지 안하는지의 차이가 있습니다.

     

    이전 포스팅에서 오류 발생과 거짓의 차이점을 설명한 적이 있습니다.

    오류시 프로그램을 중지하라고 했을 경우 중지하는 경우가 있으니 선택적으로 사용해야 합니다.

    >>> dic = {'b': 2, 'c': [1, 5], 'd': 12}

    ## dic[‘b] 와 같은 결과 입니다.

    >>> dic.get(‘b’)

    2

    >>> dic.get(‘aaa’)


    ##
    오류가 아닌 거짓(None)을 반환합니다.

    >>> print(dic.get('aaa')  )

    None

    >>> dic['aaa']

    Traceback (most recent call last):

      File "<pyshell#55>", line 1, in <module>

        dic['aaa']

    KeyError: 'aaa'

    >>>

     

    파이썬 딕셔너리 함수에 대해 공부하였습니다.

    반응형