Python 오류 해결: KeyError: 'xxx'

王林
풀어 주다: 2023-08-19 23:10:57
원래의
1952명이 탐색했습니다.

解决Python报错:KeyError: 'xxx'

Python 오류 해결 방법: KeyError: 'xxx'

Python 프로그래밍 프로세스 중에 다양한 오류 메시지가 자주 발생합니다. 그중 KeyError: 'xxx'는 일반적인 오류 유형 중 하나입니다. 이 오류는 일반적으로 사전(dict)을 사용할 때 발생합니다. 존재하지 않는 키를 통해 사전의 값에 액세스하려고 하면 Python에서 KeyError 예외가 발생합니다.

예를 들어, 학생 이름과 해당 성적이 포함된 사전이 있다고 가정합니다.

student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
print(student_scores['Alice'])
print(student_scores['David'])
로그인 후 복사

위 코드에서 처음에는 'Alice' 키를 통해 해당 값 95에 성공적으로 액세스했지만 'David' 키에 액세스하려고 시도했습니다. ', KeyError: 'David'는 이 키가 사전에 존재하지 않기 때문에 발생합니다.

그러면 KeyError: 'xxx' 오류가 발생하면 어떻게 해결해야 할까요? 아래에서는 몇 가지 일반적인 해결책을 제시하겠습니다.

  1. 키가 존재하는지 확인: 사전에 접근하기 전에 in 키워드를 사용하여 접근하려는 키가 존재하는지 확인할 수 있습니다. 예:
student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
if 'David' in student_scores:
    print(student_scores['David'])
else:
    print("Key 'David' not found")
로그인 후 복사

이렇게 하면 'David' 키가 존재하지 않더라도 KeyError 예외가 발생하지 않습니다.

  1. get() 메서드 사용: 사전 개체는 KeyError 예외를 발생시키는 대신 키가 존재하지 않을 때 기본값을 반환할 수 있는 get() 메서드를 제공합니다. 예:
student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
print(student_scores.get('David', 'Key not found'))
로그인 후 복사

위 코드에서 존재하지 않는 키 'David'에 액세스하면 KeyError 예외 없이 'Key notfound' 문자열이 반환됩니다.

  1. try-Exception 문 사용: 특정 키에 문제가 있는 경우 try-Exception 문을 사용하여 KeyError 예외를 포착하고 해당 처리 코드를 실행할 수 있습니다. 예:
student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
try:
    print(student_scores['David'])
except KeyError:
    print("Key 'David' not found")
로그인 후 복사

이 예에서 KeyError 예외가 발생하면 다음 코드 블록이 실행되고 프로그램 실행을 중단하지 않고 "Key 'David' notfound"가 출력됩니다.

요약하자면, KeyError: 'xxx' 오류가 발생하면 키가 존재하는지 확인하거나, get() 메서드를 사용하거나, try-Exception 문을 사용하여 문제를 해결할 수 있습니다. 이러한 방법은 사전의 키-값 액세스 예외를 더 잘 처리하고 프로그램의 견고성과 안정성을 향상시키는 데 도움이 될 수 있습니다.

이 기사가 Python 오류: KeyError: 'xxx'를 해결하는 데 도움이 되기를 바라며 모든 사람이 이 일반적인 오류 유형을 더 잘 처리할 수 있기를 바랍니다.

위 내용은 Python 오류 해결: KeyError: 'xxx'의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿