-
[python] 파이썬 자료형 3python/python 공부 2020. 7. 1. 14:40
파이썬의 자료형 종류
- 숫자형
- 문자열 자료형
-
리스트 자료형
-
튜플 자료형
-
딕셔너리 자료형
- 집합 자료형
- 자료형의 참과 거짓
- 자료형의 값을 저장하는 공간, 변수
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