ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [python] 파이썬 자료형 3
    python/python 공부 2020. 7. 1. 14:40

    파이썬의 자료형 종류

    1. 숫자형
    2. 문자열 자료형
    3. 리스트 자료형

    4. 튜플 자료형

    5. 딕셔너리 자료형

    6. 집합 자료형
    7. 자료형의 참과 거짓
    8. 자료형의 값을 저장하는 공간, 변수

    4. 튜플 자료형 : 튜플은 리스트와 거의 비슷하다. 사용법은 소괄호로 둘러싸서 사용한다.

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

                             값을 변경할 수 있는가 없는가가 리스트와 튜플의 가장 큰 차이점이다.

     

    ex) >>> a = ()

          >>> b = (1,)  <-- 한 개의 요소만 가질 때는 요소 뒤에 콤마가 반드시 붙어야한다.

          >>> c = (1, 2, 3)

          >>> d = 1, 2, 3  <-- 괄호를 생략해도 된다.

          >>> e = ('a', 'b', ('ab', 'cd'))

     

     ◎ 튜플 인덱싱

     ex) >>> a = (1, 2, 'a', 'b')

           >>> a[0]

           결과 : 1

     

     ◎ 튜플 슬라이싱

     ex) >>> a = (1, 2, 'a', 'b')

           >>> a[1:]

           결과 : (2, 'a', 'b')

     

     ◎ 튜플 더하기

     ex) >>> a = (1, 2, 'a', 'b')

           >>> b = (3, 4)

           >>> a + b

           결과 : (1, 2, 'a', 'b', 3, 4)

     

     ◎ 튜플 곱하기

     ex) >>> a = (1, 2, 'a', 'b')

           >>> a * 2

           결과 : (1, 2, 'a', 'b', 1, 2, 'a', 'b')

     

     

    5. 딕셔너리 자료형 : key 와 value 로 한 쌍을 갖는 자료형이다. 딕셔너리는 리스트나 튜플처럼 순차적으로 해당 요소값을 구하지 않고

                                   key를 통해 value 를 얻는다.

                                   사용 방법은 {} 를 사용한다. 예를 들면 {'name' : 'cis', 'phone' : '01012345678'} 이런식이다.

                                   value 에는 리스트 자료형도 넣을 수 있다.

                                   딕셔너리는 리스트나 튜플처럼 인덱싱 방법을 사용할 수 없다.

                                   딕셔너리에서 key 는 고유한 값이므로 중복되는 key 값을 설정해 놓으면 하나를 제외한 나머지 것들이 모두 무시된다.

                                   그렇기 때문에 key 값에는 중복된 값을 사용하지 않도록 해야한다.

                                   key 값에 리스트는 사용할 수 없지만 튜플은 사용할 수 있다. 튜플은 변하지 않는 값이 저장되기 때문에 사용 가능하다.

     

     ◎ 딕셔너리 쌍 추가

     ex) >>> a = {1, 'a'}

           >>> a[2] = 'b'  <-- {2 : 'b'} 를 추가

           >>> a['name'] = 'cis'

           >>> a[3] = [1, 2, 3]

           >>> a

           결과 : {'name': 'cis', 3: [1, 2, 3], 2: 'b', 1: 'a'}

            

     ◎ 딕셔너리 요소 삭제

     ex) >>> del a[1]

           >>> a

           결과 : {'name': 'cis', 3: [1, 2, 3], 2: 'b'}

     

     ◎ 딕셔너리에서 key 사용해 값 얻기

     ex) >>> grade = {'a' : 10, 'b' : 20}

           >>> grade['a']

           결과 : 10

     

     ◎ key 리스트 만들기 : keys() 는 딕셔너리의 key 만 모아서 dict_keys 라는 객체를 리턴한다. 파이썬 2.7 버전까지는 keys() 호출 시

                                   리턴값으로 리스트를 리턴한다. 그 이상의 버전은 리스트가 아니라 dict_keys 객체를 리턴하기 때문에 리스트

                                   값으로 변환하고 싶다면 list(a.keys()) 같은 형식으로 변환시켜 주어야 한다.

     ex) >>> a = {1:'a', 2:'b', 3:'c', 'name':'cis'}

           >>> a.keys()

           결과 : dict_keys([1, 2, 3, 'name'])

     

           >>> for n in a.keys():

           ...     print(n)

           ... 

          결과 : 1

                    2

                    3

                    name

     

           >>> list(a.keys())

           결과 : [1, 2, 3, 'name']

     

     ◎ value 리스트 만들기 : value 만 얻고 싶다면 values() 함수를 사용하면 된다. values 함수를 호출하면 dict_values 객체가 리턴되는데,

                                      dict_keys 객체와 마찬가지로 리스틀 사용하는 것과 동일하게 사용하면 된다.

     

     ◎ key, value 쌍 얻기 : items() 함수를 이용하면 key 와 value 의 쌍을 튜플로 묶은 값을 dict_items 객체로 돌려준다.

     

     ◎ key, value 쌍 모두 지우기 : clear() 함수를 사용하면 딕셔너리 안의 모든 요소를 삭제한다.

     

     ◎ key 로 value 얻기 : get() 함수를 사용한다. a['name'] 을 사용했을 때와 동일한 결과를 보여주지만 존재 하지 않는 key 를 이용했을 때

                                   반환 해주는 값이 다르다. 예를 들어 a['na'] 와 a.get('na') 으로 호출했는데 이러한 키값은 없기 때문에 가져올 수 없다. 

                                   가져올 수 없는 키 값을 지정하면 a['na'] 는 오류를 발생시키고, a.get('na') 는 None 을 리턴한다.

                                   딕셔너리 안에 찾으려는 key 값이 없을 경우 미리 정해 둔 디폴트 값을 대신 가져오게 하고 싶을 때는 get() 함수의

                                   두 번째 인자값에 값을 지정해준다.

     ex) >>> a = {1:'a', 2:'b', 3:'c', 'name':'cis'}

           >>> a.get('name')

           결과 : 'cis'

     

           >>> a.get('na', 'me') <-- default 값으로 'me' 를 지정하였다.

           결과 : 'me'

     

    해당 key 가 딕셔너리 안에 있는지 조사

     ex) >>> a = {'name':'cis', 'phone':'01012345678'}

           >>> 'name' in a

           결과 : True

     

           >>> 'email' in a

           결과 : False

     

     

     

     

     

     

    내용 출처 : Do it! 점프 투 파이썬

    'python > python 공부' 카테고리의 다른 글

    [python] 제어문 - 반복문  (0) 2020.07.18
    [python] 제어문 - if문  (0) 2020.07.12
    [python] 파이썬 자료형 4  (0) 2020.07.05
    [python] 파이썬 자료형 2  (0) 2020.06.29
    [python] 파이썬 자료형 1  (2) 2020.06.25

    댓글

Designed by Tistory.