pocket

[Python] 튜플 자료형, 딕셔너리 본문

Python

[Python] 튜플 자료형, 딕셔너리

jpocket 2025. 3. 31. 16:54
반응형

1. 튜플 자료형

1) 튜플(tuple)이란?

  • 여러 개의 값의 모음이라는 점에서 리스트와 비슷하지만 수정할 수 없다 는 점에서 다르다.
  • 소괄호() 안에 요소를 콤마,로 구분
    튜플명 = (요소1, 요소2, 요소3, ...)
  • 소괄호()를 생략해도 무방
    튜플명 = 요소1, 요소2, 요소3, ...
  • 튜플에 소속되는 각각의 값 또한 요소(element) 라고 한다.
  • 튜플 안에는 어떠한 자료형도 포함
  • 비어 있는 튜플도 생성

 

2) 튜플에서 가능한 것과 불가능한 것

가능한 것

  • 튜플 요소를 인덱싱 & 슬라이싱
  • + 연산자로 튜플을 연결
  • * 연산자로 튜플을 반복

 

불가능한 것

  • 튜플 요소를 변경하거나 삭제(del)하는 것은 불가능

 

튜플을 언제 사용하나요?

  • 튜플의 내부 구조가 단순한 만큼 더 적은 메모리를 사용하고 읽는 속도도 빠르다.
  • 편집할 수 없기 때문에 안정적이다.

 

 

 


2. 딕셔너리 자료형

1) 딕셔너리(Dictionary)란?

  • 딕셔너리는 키(Key)와 값(Value)의 쌍을 저장하는 대용량의 자료구조
  • 이를 연관 배열 또는 해시(Hash)라고 한다.
  • 딕셔너리의 가장 큰 특징은 사전같은 개념이라서 순서에 의미가 없다.
  • key는 고유하되, 값은 중복되어도 상관없다. 
  • 중괄호 안에 key:value 형태로 넣고, 콤마로 구분

ex) {key1:value1}, {key2:value2}...

 

 

만약 같은 키 값이 있을 경우, 최근에 작성한 키를 제외한 나머지는 무시된다. 

(오류는 나지 않음)

 

 

# 리스트, 튜플처럼 인덱싱 방법을 적용할 수 없다.
 

 

 

2) 딕셔너리 관련 함수

  • keys() : Key 리스트 만들기
# keys()
dog = {'name':'규봉이', 'breed':'진돗개', 'color':'brown'}
dog.keys()
dict_keys(['name', 'breed', 'color'])

 

 

  • values() : Value 리스트 만들기
# values()
dog = {'name':'규봉이', 'breed':'진돗개', 'color':'brown'}
dog.values()
 
dict_values(['규봉이', '진돗개', 'brown'])

 

 

  • items() : Key:Value 쌍 얻기
# items()
dog = {'name':'규봉이', 'breed':'진돗개', 'color':'brown'}
dog.items()
dict_items([('name', '규봉이'), ('breed', '진돗개'), ('color', 'brown')])

 

 

  • clear() : Key:Value 쌍 모두 지우기
# clear()
dog = {'name':'규봉이', 'breed':'진돗개', 'color':'brown'}
dog.clear()
dog
{}

빈 딕셔너리가 됐을 뿐, 딕셔너리 자체가 사라진 건 아님

없어진 건 아님

 

 

  • get() : Key로 Value얻기
# get()
dog = {'name':'규봉이', 'breed':'진돗개', 'color':'brown'}
dog.get('name')
'규봉이'

 

dog.get('name')  dog['name'] 은 동일한 결과값을 낸다.

 

 

 

  • in : 해당 Key가 딕셔너리 안에 있는지 조사하기
# in 은 Key만 확인 가능하다.
dog = {'name':'규봉이', 'breed':'진돗개', 'color':'brown'}
'name' in dog
True

 

 

# value 도 넣어보기
'규봉이' in dog
False

 

False인 이유는 key만 확인 가능한 함수이기 때문

 

 

 

 

반응형

'Python' 카테고리의 다른 글

[Python] 함수 활용하기  (1) 2025.04.01
[Python] 함수  (0) 2025.04.01
[Python] 집합(set) 자료형  (0) 2025.03.31
[Python] bool, 변수  (0) 2025.03.31
[Python] 연산자 (비교연산자, 논리연산자, 기타연산자)  (0) 2025.03.31