딕셔너리의 메소드

1. 딕셔너리(dictionary)

 

key,value 쌍으로 이루어진 자료형

 

key는 변경불가능한 데이터인 string, integer, float, boolean, tuple, range 등 만 가능

 

key로 리스트는 불가능하고 튜플은 가능

 

그러니까 key는 직접적으로 이름 변경이 불가능하고 삭제하고 새로 만들든지 간접적으로 변경 가능

 

key의 value는 어떠한 형태든 가능하다

 

3.7부터는 key의 입력 순서를 보존해줌

 

이를 이용하면 key를 정렬할 수도 있음

 

 

근데 주피터노트북에서 print말고 그냥 출력하면 순서가 항상 정렬된것처럼 보이네

 

 

2. 딕셔너리의 여러가지 메소드

 

자주 사용하는 것은 역시 d.keys(), d.values(), d.items()

 

가끔 사용하는 것은 d.get(k,v)

 

여기서 재밌는 것은 d.pop(k,v)

 

 

3. d.get(key,v)

 

d의 key에 대응하는 value를 가져온다

 

만약 key가 존재하지 않으면 v를 반환한다

 

기본값은 None

 

vs. d[key]도 key에 대응하는 value를 가져오지만 key가 존재하지 않으면 keyerror 발생

 

 

------------------------------------------------------------------------------------------------------------------------

 

3-1 )비슷하게 d.setdefault(key,value)라는 것이 있는데

 

key가 존재하지 않으면 value를 반환하면서 해당 key:value를 원본에 삽입한다는 특징이 있다

 

 

 

 

4. d.pop(key,v)

 

key가 딕셔너리에 있으면 원본에서 제거하고 key에 대응하는 해당 value를 반환함

 

만약 key가 존재하지 않으면 v를 반환하는데, v를 지정하지 않은 경우 keyerror를 일으킨다

 

 

 

5. d.update(key,value)

 

원본 dict에 d[key]를 인자로 준 value로 덮어씌운다

 

완전히 새로운 값도 추가 가능

 

 

 

특히 keyword parameter이기 때문에 'apple' = '사과사과'로 주는게 아니라 apple = '사과사과'로 줘야함

 

 

 

 

6. dict 순회하기

 

그냥 순회하면 key를 순회하지만 d.values()는 value값으로 순회할 수 있고

 

d.keys()는 key값으로 순회할 수 있고 d.items()하면 key,value 튜플로 순회할 수 있고

 

TAGS.

Comments