ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Python 기초 #3] 튜플(tuple), 딕셔너리(dictionary)
    Programming 기초/Python 2023. 4. 14. 23:26

    * Tuple(튜플)

    - 리스트는 []으로 둘러싸지만 튜플은 ()으로 둘러싼다.

    - 리스트는 그 값의 생성, 삭제, 수정이 가능하지만 튜플은 그 값을 바꿀 수 없다.

    - 괄호 생략 가능.

    - 1개의 요소만을 가질 때는 요소 뒤에 콤마를 반드시 붙여야함.

    그 외 나머지는 리스트와 동일히다.

    t1 = ()
    t2 = (1,)
    t3 = (1, 2, 3)
    t4 = 1, 2, 3
    t5 = ('a', 'b', ('ab', 'cd')

     

    * Dictionary(딕셔너리)

    - Key와 Value를 한 쌍으로 갖는 자료형.

    - 연관 배열(Associative array) 또는 해시(Hash)라고 불림 

    - value값으로 리스트를 쓸 수 있으나 key 값으로 리스트를 쓸 수 없다. 

    dic = {'name' : 'Eric', 'age' : 15}
    print(dic['name'])
    ---------------------------------
    Eric

    1. 딕셔너리 쌍 추가하기 

    a = {1: 'a'}
    a["name"] = "익명"
    print(a)
    -------------------------
    {1: 'a', 'name': '익명'}

    2. 딕셔너리 요소 삭제하기

    a = {1: 'a'}
    a["name"] = "익명"
    a['age'] = ['30', '31']
    print(a)
    
    del a[1]
    print(a)
    -----------------------------------------
    {1: 'a', 'name': '익명', 'age': ['30', '31']}
    {'name': '익명', 'age': ['30', '31']}

     

    * 딕셔너리 관련 함수

    1. keys() : key만을 모아서 dict_keys 객체를 돌려준다.

     - dict_keys 객체는 리스트 고유의 append, insert, pop, remove, sort 함수는 수행할 수 없다.

    a = {1: 'a', 'name': '익명', 'age': ['30', '31']}
    print(a.keys())
    ------------------------------------------------------
    dict_keys([1, 'name', 'age'])

     2. values() : dict_values 객체를 반환.

    a = {1: 'a', 'name': '익명', 'age': ['30', '31']}
    print(a.values())
    ------------------------------------------------
    dict_values(['a', '익명', ['30', '31']])

    3. list(dict_keys)와 list(dict_values)로 객체를 리스트로 만들 수 있다.

     

    4. items() : key와 value의 쌍을 튜플로 묶은 값을 dict_items 객체로 반환.

    a = {1: 'a', 'name': '익명', 'age': ['30', '31']}
    print(a.items())
    -----------------------------------------------------------------
    dict_items([(1, 'a'), ('name', '익명'), ('age', ['30', '31'])])

    5. clear() : Key와 Value 쌍 모두 지우기

    a = {1: 'a', 'name': '익명', 'age': ['30', '31']}
    a.clear()
    print(a)
    -------------------
    {}

    6. get(x) : x라는 Key에 대응되는 Value값을 반환. 

    - get(x, '디폴트 값') : '디폴트 값'을 통해 Key 값이 없을 때 반환 할 값을 미리 정해둘 수 있다.

    - get()과 a[]의 차이는 존재하지 않는 key값을 가져오려고 할 때 None값을 반환하거나 오류를 발생시킨다는 점이 다르다.

    a = {1: 'a', 'name': '익명', 'age': ['30', '31']}
    
    print(a.get('name'))
    print(a.get('address'))
    print(a.get('address','없음'))  # None 대신에 다른 값을 반환하고 싶을 때 
    
    print(a['name'])
    print(a['address'])
    --------------------------------------------------------
    익명
    None
    없음
    익명
    Traceback (most recent call last):
      File "c:\jocoding\format.py", line 8, in <module>
        print(a['address'])
    KeyError: 'address'

    7. 해당 Key가 딕셔너리 안에 있는지 조사하기(in)

    a = {1: 'a', 'name': '익명', 'age': ['30', '31']}
    
    print('name' in a)
    print('address' in a)

     

    댓글

Designed by Tistory.