log.Sehee

[데이터 취업 스쿨 스터디 노트] 자료구조 5 - 9 본문

Zerobase DS School

[데이터 취업 스쿨 스터디 노트] 자료구조 5 - 9

Sehe_e 2024. 7. 18. 22:10

 


 

튜플(Tuple)

: 불변한 자료형으로 생성된 후 그 값을 변경할 수 없다.

()을 이용해서 선언하며 생략 가능하다. 데이터 구분은 ','을 이용한다.

숫자, 문자열, 논리형 등 모든 기본 데이터를 같이 저장할 수 있으며 또 다른 컨테이너 자료형 데이터를 저장할 수 있다.

리스트와 마찬가지로 인덱스를 가지고 있으며 인덱스를 사용하며 특정 위치의 아이템을 조회할 수 있다.

 

 

in, not in

: in, not in 키워드를 사용하여 아이템의 존재 유무를 알 수 있다.

str = ['a', 'b', 'c']

if 'a' in str:
    print('yes')	# yes
    
if 'a' not in str:
    print('yes')	# 미출력
    
str_2 = 'apple'

if 'p' in str_2:
    print('yes')	# yes

 

튜플 결합

: 덧셈 연산자를 사용하여 두 개의 튜플을 결합할 수 있다.

str = ('a', 'b')
str2 = ('c', 'd')

print(str + str2)	# ('a', 'b', 'c', 'd')

 

튜플 슬라이싱

: 리스트와 같은 방법으로 [n:m]을 사용하면 원하는 아이템을 뽑아낼 수 있다.

슬라이싱할 때 단계를 설정할 수 있다.

str = ('a', 'b', 'c', 'd', 'e', 'f', 'g')

print(str[2:-2]) 	# ('c', 'd', 'e')
print(str[2:-2:2]) 	# ('c', 'e')

 

튜플 정렬

: sort() 사용 시 리스트로 변환 후 정렬한다. sorted() 사용 시 바로 정렬할 수 있으며 리스트를 반환한다.

str = (2, 3, 4, 1)

print(sorted(str))	# [1, 2, 3, 4]

str.sort() 	# 'tuple' object has no attribute 'sort'

str = list(str)
str.sort()
print(str)	# [1, 2, 3, 4]

 

딕셔너리(Dictionary)

: 키(key)와 값(value)을 이용해서 자료를 관리한다.

{}을 이용해서 선언하고, 'key:value' 형태로 아이템을 정의한다.

숫자, 문자열, 논리형, 컨테이너 자료형을 넣을 수 있다. key값에 immutable값은 가능하지만 mutable값은 넣을 수 없다.

 

딕셔너리 조회

: key값을 이용해서 value를 조회한다.

str = {
    1: 'a',
    2: 'b',
    3: 'c'
       }

print(str[1])	# a

 

딕셔너리 추가 / 수정

: 딕셔너리[key] = value 형태로 아이템을 추가하며 기존에 존재하는 키라면 값이 변경된다.

str = {1: 'a', 2: 'b', 3: 'c'}

str[4] = 'd'
print(str)	# {1: 'a', 2: 'b', 3: 'c', 4: 'd'}

str[4] = 'a'
print(str)	# {1: 'a', 2: 'b', 3: 'c', 4: 'a'}

 

딕셔너리 조회

: keys() 사용 시 딕셔너리의 전체 key 값을 조회할 수 있다.

values() 사용 시 딕셔너리의 전체 value 값을 조회할 수 있다.

str = {1: 'a', 2: 'b', 3: 'c'}

print(str.keys()) 	# dict_keys([1, 2, 3])
print(str.values()) 	# dict_values(['a', 'b', 'c'])

 

딕셔너리 삭제

 

 

: 'del 딕셔너리[key]'로 아이템을 삭제할 수 있다.

'딕셔너리.pop(key)'로 아이템을 삭제할 수 있다.

str = {1: 'a', 2: 'b', 3: 'c'}

del str[1]
print(str)	# {2: 'b', 3: 'c'}

str.pop(2)
print(str)	# {3: 'c'}

 

in, not in

: key의 존재 유무를 판단한다.

str = {1: 'a', 2: 'b', 3: 'c'}

if 4 in str:
    print('yes')	# 미출력

if 4 not in str:
    print('yes')	# yes

 

 


내일의 학습 목표

자료구조 문풀 1 - 3

 

 

Comments