-
[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)
'Programming 기초 > Python' 카테고리의 다른 글
[Python 기초 #6] 함수, 사용자 입력과 출력, 파일 읽고 쓰기 (0) 2023.04.19 [Python 기초 #5] 제어문 if, while, for (0) 2023.04.18 [Python 기초 #4] 집합(set), 불(bool), 변수(variable) (0) 2023.04.15 [Python 기초 #2] 리스트 자료형 (0) 2023.04.14 [Python 기초 #1] 기본 문법1 - 문자열, count, find, index, (0) 2023.04.12