>  기사  >  백엔드 개발  >  3분 안에 Python에서 dict 함수의 의미를 이해하세요.

3분 안에 Python에서 dict 함수의 의미를 이해하세요.

Tomorin
Tomorin원래의
2018-08-17 14:47:575479검색

Python에는 사전이 내장되어 있습니다: dict 지원, dict전체 이름 dictionary, 다른 언어에서는 지도라고도 하며 매우 빠른 검색 속도로 키-값(키-값) 저장소를 사용합니다.

예를 들어, 동급생의 이름을 기준으로 해당 등급을 찾고 싶다고 가정해 보겠습니다. 이를 구현하기 위해 목록을 사용하는 경우 두 개의 목록이 필요합니다.

names = ['Michael', 'Bob', 'Tracy']
scores = [95, 75, 85]

이름을 지정하고 해당 등급을 찾으려면 먼저 이름에서 해당 항목을 찾은 다음 점수에서 해당 결과를 검색해야 합니다.

dict로 구현하면 "이름"-"점수" 비교표만 필요하며, 테이블이 아무리 커도 검색 속도가 느려지지 않습니다. . Python을 사용하여 다음과 같이 dict를 작성하세요.

>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
>>> d['Michael']
95

딕셔너리 검색이 왜 그렇게 빠른가요? 왜냐하면 dict의 구현 원리는 사전을 찾는 것과 동일하기 때문입니다. 사전에 10,000개의 한자가 포함되어 있고 특정 단어를 찾고 싶다고 가정해 보겠습니다. 한 가지 방법은 원하는 단어를 찾을 때까지 사전을 첫 번째 페이지부터 뒤로 넘기는 것입니다. 이 방법은 목록에서 더 큰 요소를 찾는 것입니다. 목록이 많을수록 검색 속도가 느려집니다.

두 번째 방법은 먼저 사전 색인표(예: 근수표)에서 단어에 해당하는 페이지 번호를 조회한 다음 해당 페이지로 바로 넘어가서 해당 단어를 찾는 것입니다. 어떤 단어를 찾고 있더라도 이 검색 속도는 매우 빠르며 사전의 크기가 커져도 느려지지 않습니다.

dict는 두 번째 구현 방법으로 'Michael'과 같은 이름이 주어지면 dict는 숫자 95가 저장된 메모리 주소인 Michael의 점수에 해당하는 "페이지 번호"를 내부적으로 직접 계산하여 직접 검색할 수 있습니다. 나오니까 엄청 빨라요.

짐작할 수 있듯이 이 키-값 저장 방식은 입력할 때 키를 기준으로 값의 저장 위치를 ​​계산해야 하므로 검색할 때 직접 값을 기준으로 가져올 수 있습니다. 열쇠.

데이터를 dict에 넣는 방법은 초기화 중에 지정하는 것 외에도 키로 넣을 수도 있습니다:

>>> d['Adam'] = 67
>>> d['Adam']
67

키는 하나의 값에만 대응할 수 있으므로 키에 값을 여러 번 넣는 경우 , 후속 값은 이전 값을 플러시합니다:

>>> d['Jack'] = 90
>>> d['Jack']
90
>>> d['Jack'] = 88
>>> d['Jack']
88

키가 존재하지 않으면 dict는 오류를 보고합니다:

>>> d['Thomas']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: &#39;Thomas&#39;

키가 존재하지 않는다는 오류를 방지하려면 두 가지 방법이 있습니다.

>>> &#39;Thomas&#39; in d
False


를 통해 키가 존재하는지 판단하는 것입니다.

위 내용은 3분 안에 Python에서 dict 함수의 의미를 이해하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.