>백엔드 개발 >파이썬 튜토리얼 >Python 사전은 `keys()` 및 `values()`를 사용하여 순서화된 키-값 검색을 보장합니까?

Python 사전은 `keys()` 및 `values()`를 사용하여 순서화된 키-값 검색을 보장합니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-09 03:25:02756검색

Do Python Dictionaries Guarantee Ordered Key-Value Retrieval with `keys()` and `values()`?

Python 사전의 키와 값은 일정한 순서를 유지합니까?

Python에서 사전은 키-값 쌍의 모음이며, 여기서 키는 고유합니다. 해당 값에 대한 식별자로 사용됩니다. key() 및 value() 메서드를 사용하여 사전의 키와 값에 액세스하는 것은 일반적인 작업입니다. 그러나 질문이 생깁니다. 이러한 메소드가 순차적으로 호출될 때 키와 값의 순서가 항상 일관됩니까?

Response

공식 Python 문서에 따르면, 그렇지 않은 경우 키()와 값()을 호출하는 사이에 사전에 수정이 이루어지면 반환된 목록의 순서가 직접적으로 일치합니다. 이는 키 목록의 각 인덱스에 대해 해당 값을 값 목록의 동일한 인덱스에서 찾을 수 있음을 의미합니다.

예는 다음과 같습니다.

d = {'one': 1, 'two': 2, 'three': 3}
k, v = d.keys(), d.values()

for i in range(len(k)):
    print("{}: {}".format(k[i], v[i]))  # Prints keys and corresponding values

# Result:
# one: 1
# two: 2
# three: 3

문서에는 이 대응이 명시되어 있습니다. 명시적으로:

사전에 대한 중간 수정 없이 items(), key(), value(), iteritems(), iterkeys() 및 itervalues()가 호출되면 목록이 직접적으로 대응됩니다.

결론

사전이 변경되지 않는 한, 키() 및 값() 메서드는 일관된 순서를 유지하는 목록을 반환하므로 키를 해당 항목에 쉽게 매핑할 수 있습니다. 해당 값. 이 동작은 명시적으로 문서화되어 있으며 Python 코드에서 안정적인 사용을 보장합니다.

위 내용은 Python 사전은 `keys()` 및 `values()`를 사용하여 순서화된 키-값 검색을 보장합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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