ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Python 자료형 List, Tuple(튜플), dictionary(딕셔너리), set
    개발 이야기/TIL 2023. 1. 24. 11:18

    List

    lst = [1,2,3,0,-4,100]

    list, 파이썬에서는 배열(array)를 제공하지 않는데, 대신 list를 제공한다. 다만 이는 내부적으로 dynamic array와 같다. 

    list에서 특정 요소에 접근하기 

    lst = [1,2,3,0,-4,100]
    lst[0]
    1
    lst[-1]
    100

    이중 list에서 값에 접근하기 

    lst = [1,2,[100,99],4]
    lst[2]
    [100, 99]
    lst[2][0]
    100

    이중 배열 선언하기

    lst = [[0 for j in range(19)] for i in range(19)]
    #j column, i row

    여러 함수들 

    lst = [1,2,3,0,-4,100]
    lst.append(2)
    lst.sort()
    lst.reverse()
    lst.insert(1,3)
    lst.remove(2)#숫자 제거 
    lst.pop() #마지막 요소 리턴 후 삭제

    Tuple(튜플)

    list와 비슷하지만 []가 아니니 ()로 둘러싸인다. 튜플은 요소의 값을 바꿀 수 없다 

    tup = (1,2,3,0,-4,100)
    del tup[0]
    ```
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: 'tuple' object doesn't support item deletion
    ```

    Dictionary { }

    딕셔너리는 key:value 쌍을 가지는 자료형이다. {}을 사용한다 

    {Key1:Value1, Key2:Value2, Key3:Value3, ...}
    dict = {'name':'zin', 'phone':'010-1234-1234', 'birth': '0907'}

     

     

    key값 받기, value값만 받기 , 쌍으로 받기 

    dict.keys()
    dict_keys(['name', 'phone', 'birth'])
    
    dict.values()
    dict_values(['zin', '010-1234-1234', '0907'])
    
    dict.items()
    dict_items([('name', 'zin'), ('phone', '010-1234-1234'), ('birth', '0907')])

    key로 value값 얻기, 확인하기 

    dict.get('name')
    'zin'
    'name' in dict
    True

    Set :집합, 중복 허용안함 

    set도 동일하게 {}을 이용해서 만들수 있지만, dict와 겹침으로 빈 set을 만들기 위해서는 s = set()으로 만들어야한다

    특징

    1. 중복을 허용하지 않는다

    2. 순서가 없다 -> 인덱싱을 지원하지 않는다 

    집합 관련 함수

    s1 = set([1, 2, 3, 4, 5, 6])
    s2 = set([4, 5, 6, 7, 8, 9])
    
    #교집합
    >>> s1 & s2
    {4, 5, 6}
    
    #합집합
    >>> s1 | s2
    {1, 2, 3, 4, 5, 6, 7, 8, 9}
    
    #차집합
     s1 - s2
     {8, 9, 7}

    집합안에 원소 추가, 제거 

    s1 = set([1, 2, 3])
    
    #값 추가
    s1.add(5)
    s1
    {1, 2, 3, 5}
    
    #여러값 추가
    s1.update([4,0,8])
    s1
    {0, 1, 2, 3, 4, 5, 8}
    
    #값 제거 
    s1.remove(0)
    s1
    {1, 2, 3, 4, 5, 8}
Designed by Tistory.