해시데이터
리스트 데이터 : [ ]
튜플 데이터 : ( )
해시 데이터 : { }
해시 데이터는 튜플데이터와 달리 리스트 데이터 처럼 삭제와 추가등이 가능하다.
해시 데이터는 리스트와 달리 각 요소를 열쇠(key)와 값(value)로 구분한다.
=> 도메인 네임과 ip 주소의 대응 관계를 표현하는데 적합하다.
dns={"twitter.com":"199.59.150.39", "facebook.com":"66.220.158.68"}
해시데이터는 위와 같이 표현할 수 있다. 이때 도메인 네임이 열쇠에 해당하고 IP주소가 값에 해당한다. 즉, 중간의 콜론을 기점으로 앞쪽이 도메인 네임에 해당하고 뒤쪽이 값에 해당한다.
새로운 도메인 네임과 IP주소를 추가할 경우,
dns["google.com"]="59.18.44.84"
위와 같이 입력한다.
해시 데이터에서 각각의 열쇠와 값, 그리고 열쇠와 값을 모두 보기 위해, key(), values(), item()과 같은 내장함수를 이용한다.
item()함수는 열쇠와 값을 튜플 데티어로 처리한 뒤 데이터 형태로 출력한 것을 확인할 수 있다.
특정 도메인 네임(열쇠)를 삭제하고 싶다면 del함수를 사용하면 된다.
del dns["google.com"] // 열쇠 삭제
위에 사진에서 보이는 것처럼 del은 열쇠만 삭제할 수 있을 뿐 값(IP)를 삭제할 수 없다.
dns.clear()는 해시 데이터의 모든 내용을 삭제한다.
dns=tuple(dns) // 해시 -> 튜플
dns=list(dns) // 해시 -> 리스트
해시를 튜플 혹은 리스트 데이터로 변경할 수 있지만 이럴 경우 값은 없어지고 열쇠만 남는다.