Python Dict 반복에서 \'풀기할 값이 너무 많습니다\' 오류를 해결하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-10-20 19:28:30
원래의
171명이 탐색했습니다.

How to Resolve

Python: Dict 반복을 위한 "압축 해제할 값이 너무 많습니다": 이해 및 해결

사전을 반복할 때 올바른 구문과 행동 양식. iterable에서 사용할 수 있는 것보다 더 많은 값을 압축 해제하려고 하면 "압축 해제할 값이 너무 많습니다"라는 오류가 발생합니다.

주어진 코드 조각에서:

first_names = ['foo', 'bar']
last_names = ['gravy', 'snowman']

fields = {
    'first_names': first_names,
    'last_name': last_names,
}

for field, possible_values in fields:  # error happens on this line
로그인 후 복사

오류가 발생하는 이유는 사전의 키를 반복하여 반환된 단일 튜플에서 두 값(field 및 available_values)의 압축을 풀려고 합니다. 이 문제를 해결하려면 Python 버전에 따라 두 가지 옵션이 있습니다.

Python 3

Python 3에서는 items() 메서드를 사용하여 사전의 키와 값을 모두 반복합니다.

<code class="python">for field, possible_values in fields.items():
    print(field, possible_values)</code>
로그인 후 복사

Python 2

Python 2에서는 items() 대신 iteritems() 메서드를 사용합니다.

<code class="python">for field, possible_values in fields.iteritems():
    print field, possible_values</code>
로그인 후 복사

items()와 iteritems() 모두 키-값 쌍의 시퀀스를 반환하여 루프 내에서 적절하게 압축을 풀 수 있습니다.

또는 사전의 키나 값만 필요한 경우 직접 반복할 수 있습니다.

# Iterate over keys
for field in fields.keys():
    print(field)

# Iterate over values
for possible_values in fields.values():
    print(possible_values)
로그인 후 복사

위 내용은 Python Dict 반복에서 \'풀기할 값이 너무 많습니다\' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!