본문 바로가기

Hello python!/python_Basic

파이썬 시작 (자료형_딕셔너리)

20221006

4일차

 


딕셔너리는 단어부터 사전같다.

사전을 보면 일정한 범위 안에서 쓰이는 낱말을 모아서 일정한 순서로 배열하여 싣고 각각의 내용 및 정보가 있는데

딕셔너리 또한 그러한 구조로 저장되는것 같다.

 

성경책의 몇장 몇절 처럼

딕셔너리 또한 몇 장에 해당하는 key값, 몇 절에 해당하는 value값을 가진다.

 

또한 딕셔너리의 아이템은 key:value 로 구성된 한쌍이다.

 

딕셔너리 생성시 {}를 이용한다.

또한 2차원 자료(몇장 몇절)를 이용해서 딕셔너리로 변환 가능하다.


key 값에는 중복된 자료가 못 들어가지만 value 값에는 들어갈 수 있는 자료에 제약은 없다.

만약 key 값에 중복된 자료가 들어갈 경우 중복된 key마지막 하나만 반영된다.


딕셔너리 또한 인덱싱이 가능하다.

 

기존의 인덱싱(문자, 리스트)은 인덱싱 번호를 넣으면 가능하지만

딕셔너리는 key값을 이용해 인덱싱 한다.

 

* 슬라이싱은 불가능! 반복문을 사용해야한다.

 


딕셔너리에 아이템을 추가하는 방법은

인덱싱 방식update()라는 메서드 방식을 통해 가능하다.

딕셔너리 d1을 만들고 인덱싱을 이용해 새로운 key 값 위치value 값을 넣어줘 하면된다.


update() 메서드 방식에서

리스트로도 처리할 수 있다.

 

*만약 딕셔너리를 리스트로 돌릴때key 값만 복원된다.

여기서 딕셔너리의 구조와 리스트의 구조가 확실히 다르다는 점을 알 수 있다.

 

 


삭제하기 부분에서 주의해야 할 점은

get으로는 삭제가 불가능 하고 del을 이용한 삭제가 가능하다.

del 딕셔너리[key값]


clear() 메서드는 말 그대로 클린하게 비워주는 느낌이고

del 은 말 그대로 삭제 느낌이다.

 


 

위에서 본것처럼 딕셔너리를 리스트로 변환시 key 값만 바뀌는데

.keys() 함수를 통해 다른 방식으로 key 값리스트로 변환 가능하다.

그럼 value 값은 따로 리스트로 빼고 싶을때는 방법이 없나 싶을 수 있지만

이 또한 .values() 함수로 친절하게 할 수 있게 해놨다.

 


 

또한 딕셔너리가 가진 아이템 (key, value)를 튜플로 묶어서 리스트 형식으로 변환할 수 있다.

 

in 키워드key 값이 존재하는지 확인할 수 있다.