ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자료형에 따른 활용법(함수 등) - 딕셔너리
    파이썬 2020. 7. 1. 03:58

    1. 딕셔너리 만드는 법

    딕셔너리의 경우 key와 value 값이 있어야 하므로 기본적으로 2개의 값이 필요하다. 중괄호 { }로 둘러쌓여 있으며 리스트, 튜플과 다르게 별도의 순서가 존재하지 않는다. 딕셔너리의 형태는 다음과 같다. 참고로 딕셔너리의 key값에 리스트는 올 수 없다. 왜냐하면 key값은 바뀌지 않아야 하기 때문. 그래서 튜플이나 문자, 숫자는 올 수 있어도 리스트는 올 수 없다.

     

    ex) {Key1:Value1, Key2:Value2, Key3:Value3, ...}

     

     

    2. 딕셔너리에서 key값을 이용해 value값 얻어내기 : x[ "y" ]

    key와 value는 한쌍이므로 key값을 부르면 value값도 같이 따라온다.

    * 다만 한개의 key값은 한 개의 value값만 가질 수 있으므로 딕셔너리 내에서 key값이 중복될 경우 그 중에 한 개의 key값만 유효하게 된다.

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a["손흥민"]
    '축구'

     

     

    2. 딕셔너리 요소 추가하기 : x[ "y" ] = "z"

    * a는 딕셔너리의 변수값, y는 key값, z는 value값이다.

    >>> a = {"김연아" : "피겨", "류현진" : "야구"}
    >>> a["손흥민"] = "축구"
    >>> a
    {'김연아': '피겨', '류현진': '야구', '손흥민': '축구'}

     

     

    3. 딕셔너리 요소 여러개 한 꺼번에 추가하기 : x.update( {"y1 : z1" , "y1 : z1"} )

    * update를 이용하면 딕셔너리 안에 여러 개의 요소를 한 꺼번에 넣을 수 있다.

    * 변수.update( { "key1" : "value1" , "key2" : "value2"} )

    >>> a = {"김연아" : "피겨" }
    >>> a.update ({"류현진" : "야구", "손흥민" : "축구"})
    >>> a
    {'김연아': '피겨', '류현진': '야구', '손흥민': '축구'}

     

     

    4. 딕셔너리 함수와 기능

    (1) 딕셔너리에서 key값을 이용해 value값 얻어내기 : x.get( "y" )

    get함수를 이용해 value값을 얻어내는 것은 기존의 key값을 이용한 방법과 결과값은 같다.

    * 다만 존재하지 않는 key값을 사용할 경우 기존에는 오류 메시지가 뜨지만 get함수는 None값을 출력.

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a.get("손흥민")
    '축구'
    >>> print(a.get("박지성"))
    None

     

    (2) 딕셔너리 내 원하는 key값이 없을 경우 원하는 디폴트 값을 불러오길 원하면 : x.get( y, z )

    get함수를 이용할 때, key값이 존재하지 않을 경우 None이 아닌 디폴트 메시지를 출력하게 할 수 있다.

    변수.get("key값", "디폴트 메시지")와 같은 형식으로 써주면 된다.

     

     

    (3) 딕셔너리 key값 리스트로 돌려받기 : x.keys( )

    keys 함수를 쓰면 딕셔너리 내의 key값만 따로 추출이 가능하다.

    * 단, keys 함수를 쓸 경우 파이썬 2.7버전까진 key값을 리스트로 돌려줬다.

    * 파이썬 3.0부터는 객체값으로 돌려주고 있으며 이를 리스트로 받고 싶다면 list(a.keys())를 써야한다.

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a.keys()
    dict_keys(['김연아', '류현진', '손흥민'])

     

    (4) 딕셔너리 value값 리스트로 돌려받기 : x.values( )

    key값을 구하는 것과 마찬가지로 해당 함수를 쓰면 value함수를 쓰면 value 값을 리스트 형태로 돌려준다. 

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a.values()
    dict_values(['피겨', '야구', '축구'])

     

    (5) 딕셔너리의 key값과 value값 쌍으로 돌려받기 : x.items( )

    items 함수는 key값과 value값을 튜플로 묶어서 리스트 형태의 객체로 돌려준다.

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a.items()
    dict_items([('김연아', '피겨'), ('류현진', '야구'), ('손흥민', '축구')])

     

     

    (6) 딕셔너리 요소 삭제하기 : del x[ "y" ]

    * del 함수를 딕셔너리에서 사용해줄 경우 key값을 삭제하면 key값과 value값이 같이 한쌍으로 삭제된다.

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> del a["손흥민"]
    >>> a
    {'김연아': '피겨', '류현진': '야구'}

     

    (7) 딕셔너리의 key값, value값 삭제하기 : x.clear( )

    * clear 함수를 사용하면 딕셔너리 내 모든 요소를 삭제하고 { }만 남도록 만든다.

    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a.clear()
    >>> a
    {}

     

     

    (8) 딕셔너리 내에 key값 여부 조사 : "y" in x

    * 딕셔너리 내에서 해당 key값의 유무를 판단하여 참/거짓으로 나타낸다.

    >>> a = { "김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> a = {"김연아" : "피겨", "류현진" : "야구", "손흥민" : "축구"}
    >>> "김연아" in a
    True
    >>> "박지성" in a
    False

     

     

Designed by Tistory.